/**
 * Copyright 2021 Tianmian Tech. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *     http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: gateway-meta.proto

package com.welab.wefe.gateway.api.meta.basic;

public final class GatewayMetaProto {
    private GatewayMetaProto() {
    }

    public static void registerAllExtensions(
            com.google.protobuf.ExtensionRegistryLite registry) {
    }

    public static void registerAllExtensions(
            com.google.protobuf.ExtensionRegistry registry) {
        registerAllExtensions(
                (com.google.protobuf.ExtensionRegistryLite) registry);
    }

    /**
     * Protobuf enum {@code com.welab.wefe.gateway.api.meta.basic.TransferStatus}
     */
    public enum TransferStatus
            implements com.google.protobuf.ProtocolMessageEnum {
        /**
         * <code>NOT_PROCESSED = 0;</code>
         */
        NOT_PROCESSED(0),
        /**
         * <code>INITIALIZING = 1;</code>
         */
        INITIALIZING(1),
        /**
         * <code>PROCESSING = 2;</code>
         */
        PROCESSING(2),
        /**
         * <code>COMPLETE = 3;</code>
         */
        COMPLETE(3),
        /**
         * <code>ERROR = 4;</code>
         */
        ERROR(4),
        /**
         * <code>CANCELLED = 5;</code>
         */
        CANCELLED(5),
        UNRECOGNIZED(-1),
        ;

        /**
         * <code>NOT_PROCESSED = 0;</code>
         */
        public static final int NOT_PROCESSED_VALUE = 0;
        /**
         * <code>INITIALIZING = 1;</code>
         */
        public static final int INITIALIZING_VALUE = 1;
        /**
         * <code>PROCESSING = 2;</code>
         */
        public static final int PROCESSING_VALUE = 2;
        /**
         * <code>COMPLETE = 3;</code>
         */
        public static final int COMPLETE_VALUE = 3;
        /**
         * <code>ERROR = 4;</code>
         */
        public static final int ERROR_VALUE = 4;
        /**
         * <code>CANCELLED = 5;</code>
         */
        public static final int CANCELLED_VALUE = 5;


        public final int getNumber() {
            if (this == UNRECOGNIZED) {
                throw new IllegalArgumentException(
                        "Can't get the number of an unknown enum value.");
            }
            return value;
        }

        /**
         * @param value The numeric wire value of the corresponding enum entry.
         * @return The enum associated with the given numeric wire value.
         * @deprecated Use {@link #forNumber(int)} instead.
         */
        @Deprecated
        public static TransferStatus valueOf(int value) {
            return forNumber(value);
        }

        /**
         * @param value The numeric wire value of the corresponding enum entry.
         * @return The enum associated with the given numeric wire value.
         */
        public static TransferStatus forNumber(int value) {
            switch (value) {
                case 0:
                    return NOT_PROCESSED;
                case 1:
                    return INITIALIZING;
                case 2:
                    return PROCESSING;
                case 3:
                    return COMPLETE;
                case 4:
                    return ERROR;
                case 5:
                    return CANCELLED;
                default:
                    return null;
            }
        }

        public static com.google.protobuf.Internal.EnumLiteMap<TransferStatus>
        internalGetValueMap() {
            return internalValueMap;
        }

        private static final com.google.protobuf.Internal.EnumLiteMap<
                TransferStatus> internalValueMap =
                new com.google.protobuf.Internal.EnumLiteMap<TransferStatus>() {
                    public TransferStatus findValueByNumber(int number) {
                        return TransferStatus.forNumber(number);
                    }
                };

        public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
            return getDescriptor().getValues().get(ordinal());
        }

        public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
            return getDescriptor();
        }

        public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
            return GatewayMetaProto.getDescriptor().getEnumTypes().get(0);
        }

        private static final TransferStatus[] VALUES = values();

        public static TransferStatus valueOf(
                com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
            if (desc.getType() != getDescriptor()) {
                throw new IllegalArgumentException(
                        "EnumValueDescriptor is not for this type.");
            }
            if (desc.getIndex() == -1) {
                return UNRECOGNIZED;
            }
            return VALUES[desc.getIndex()];
        }

        private final int value;

        private TransferStatus(int value) {
            this.value = value;
        }

        // @@protoc_insertion_point(enum_scope:com.welab.wefe.gateway.api.meta.basic.TransferStatus)
    }

    public interface JobOrBuilder extends
            // @@protoc_insertion_point(interface_extends:com.welab.wefe.gateway.api.meta.basic.Job)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <pre>
         * Id
         * </pre>
         *
         * <code>string jobId = 1;</code>
         *
         * @return The jobId.
         */
        String getJobId();

        /**
         * <pre>
         * Id
         * </pre>
         *
         * <code>string jobId = 1;</code>
         *
         * @return The bytes for jobId.
         */
        com.google.protobuf.ByteString
        getJobIdBytes();

        /**
         * <pre>
         * 名称
         * </pre>
         *
         * <code>string jobName = 2;</code>
         *
         * @return The jobName.
         */
        String getJobName();

        /**
         * <pre>
         * 名称
         * </pre>
         *
         * <code>string jobName = 2;</code>
         *
         * @return The bytes for jobName.
         */
        com.google.protobuf.ByteString
        getJobNameBytes();
    }

    /**
     * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.Job}
     */
    public static final class Job extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:com.welab.wefe.gateway.api.meta.basic.Job)
            JobOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use Job.newBuilder() to construct.
        private Job(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private Job() {
            jobId_ = "";
            jobName_ = "";
        }

        @Override
        @SuppressWarnings({"unused"})
        protected Object newInstance(
                UnusedPrivateParameter unused) {
            return new Job();
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private Job(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {
                            String s = input.readStringRequireUtf8();

                            jobId_ = s;
                            break;
                        }
                        case 18: {
                            String s = input.readStringRequireUtf8();

                            jobName_ = s;
                            break;
                        }
                        default: {
                            if (!parseUnknownField(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Job_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Job_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            Job.class, Builder.class);
        }

        public static final int JOBID_FIELD_NUMBER = 1;
        private volatile Object jobId_;

        /**
         * <pre>
         * Id
         * </pre>
         *
         * <code>string jobId = 1;</code>
         *
         * @return The jobId.
         */
        public String getJobId() {
            Object ref = jobId_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                jobId_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * Id
         * </pre>
         *
         * <code>string jobId = 1;</code>
         *
         * @return The bytes for jobId.
         */
        public com.google.protobuf.ByteString
        getJobIdBytes() {
            Object ref = jobId_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                jobId_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int JOBNAME_FIELD_NUMBER = 2;
        private volatile Object jobName_;

        /**
         * <pre>
         * 名称
         * </pre>
         *
         * <code>string jobName = 2;</code>
         *
         * @return The jobName.
         */
        public String getJobName() {
            Object ref = jobName_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                jobName_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * 名称
         * </pre>
         *
         * <code>string jobName = 2;</code>
         *
         * @return The bytes for jobName.
         */
        public com.google.protobuf.ByteString
        getJobNameBytes() {
            Object ref = jobName_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                jobName_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (!getJobIdBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 1, jobId_);
            }
            if (!getJobNameBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 2, jobName_);
            }
            unknownFields.writeTo(output);
        }

        @Override
        public int getSerializedSize() {
            int size = memoizedSize;
            if (size != -1) return size;

            size = 0;
            if (!getJobIdBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, jobId_);
            }
            if (!getJobNameBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, jobName_);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof Job)) {
                return super.equals(obj);
            }
            Job other = (Job) obj;

            if (!getJobId()
                    .equals(other.getJobId())) return false;
            if (!getJobName()
                    .equals(other.getJobName())) return false;
            if (!unknownFields.equals(other.unknownFields)) return false;
            return true;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + JOBID_FIELD_NUMBER;
            hash = (53 * hash) + getJobId().hashCode();
            hash = (37 * hash) + JOBNAME_FIELD_NUMBER;
            hash = (53 * hash) + getJobName().hashCode();
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static Job parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Job parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Job parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Job parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Job parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Job parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Job parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static Job parseFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        public static Job parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static Job parseDelimitedFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
        }

        public static Job parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static Job parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(Job prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.Job}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:com.welab.wefe.gateway.api.meta.basic.Job)
                JobOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Job_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Job_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                Job.class, Builder.class);
            }

            // Construct using com.welab.wefe.gateway.api.meta.basic.GatewayMetaProto.Job.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                jobId_ = "";

                jobName_ = "";

                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Job_descriptor;
            }

            @Override
            public Job getDefaultInstanceForType() {
                return Job.getDefaultInstance();
            }

            @Override
            public Job build() {
                Job result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public Job buildPartial() {
                Job result = new Job(this);
                result.jobId_ = jobId_;
                result.jobName_ = jobName_;
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof Job) {
                    return mergeFrom((Job) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(Job other) {
                if (other == Job.getDefaultInstance()) return this;
                if (!other.getJobId().isEmpty()) {
                    jobId_ = other.jobId_;
                    onChanged();
                }
                if (!other.getJobName().isEmpty()) {
                    jobName_ = other.jobName_;
                    onChanged();
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

            @Override
            public final boolean isInitialized() {
                return true;
            }

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                Job parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (Job) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private Object jobId_ = "";

            /**
             * <pre>
             * Id
             * </pre>
             *
             * <code>string jobId = 1;</code>
             *
             * @return The jobId.
             */
            public String getJobId() {
                Object ref = jobId_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    jobId_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * Id
             * </pre>
             *
             * <code>string jobId = 1;</code>
             *
             * @return The bytes for jobId.
             */
            public com.google.protobuf.ByteString
            getJobIdBytes() {
                Object ref = jobId_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    jobId_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * Id
             * </pre>
             *
             * <code>string jobId = 1;</code>
             *
             * @param value The jobId to set.
             * @return This builder for chaining.
             */
            public Builder setJobId(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                jobId_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * Id
             * </pre>
             *
             * <code>string jobId = 1;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearJobId() {

                jobId_ = getDefaultInstance().getJobId();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * Id
             * </pre>
             *
             * <code>string jobId = 1;</code>
             *
             * @param value The bytes for jobId to set.
             * @return This builder for chaining.
             */
            public Builder setJobIdBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                jobId_ = value;
                onChanged();
                return this;
            }

            private Object jobName_ = "";

            /**
             * <pre>
             * 名称
             * </pre>
             *
             * <code>string jobName = 2;</code>
             *
             * @return The jobName.
             */
            public String getJobName() {
                Object ref = jobName_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    jobName_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * 名称
             * </pre>
             *
             * <code>string jobName = 2;</code>
             *
             * @return The bytes for jobName.
             */
            public com.google.protobuf.ByteString
            getJobNameBytes() {
                Object ref = jobName_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    jobName_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * 名称
             * </pre>
             *
             * <code>string jobName = 2;</code>
             *
             * @param value The jobName to set.
             * @return This builder for chaining.
             */
            public Builder setJobName(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                jobName_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 名称
             * </pre>
             *
             * <code>string jobName = 2;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearJobName() {

                jobName_ = getDefaultInstance().getJobName();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 名称
             * </pre>
             *
             * <code>string jobName = 2;</code>
             *
             * @param value The bytes for jobName to set.
             * @return This builder for chaining.
             */
            public Builder setJobNameBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                jobName_ = value;
                onChanged();
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFields(unknownFields);
            }

            @Override
            public final Builder mergeUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.mergeUnknownFields(unknownFields);
            }


            // @@protoc_insertion_point(builder_scope:com.welab.wefe.gateway.api.meta.basic.Job)
        }

        // @@protoc_insertion_point(class_scope:com.welab.wefe.gateway.api.meta.basic.Job)
        private static final Job DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new Job();
        }

        public static Job getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<Job>
                PARSER = new com.google.protobuf.AbstractParser<Job>() {
            @Override
            public Job parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new Job(input, extensionRegistry);
            }
        };

        public static com.google.protobuf.Parser<Job> parser() {
            return PARSER;
        }

        @Override
        public com.google.protobuf.Parser<Job> getParserForType() {
            return PARSER;
        }

        @Override
        public Job getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface TaskOrBuilder extends
            // @@protoc_insertion_point(interface_extends:com.welab.wefe.gateway.api.meta.basic.Task)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <pre>
         * 任务ID
         * </pre>
         *
         * <code>string taskId = 1;</code>
         *
         * @return The taskId.
         */
        String getTaskId();

        /**
         * <pre>
         * 任务ID
         * </pre>
         *
         * <code>string taskId = 1;</code>
         *
         * @return The bytes for taskId.
         */
        com.google.protobuf.ByteString
        getTaskIdBytes();

        /**
         * <pre>
         * 任务名称
         * </pre>
         *
         * <code>string taskName = 2;</code>
         *
         * @return The taskName.
         */
        String getTaskName();

        /**
         * <pre>
         * 任务名称
         * </pre>
         *
         * <code>string taskName = 2;</code>
         *
         * @return The bytes for taskName.
         */
        com.google.protobuf.ByteString
        getTaskNameBytes();

        /**
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
         *
         * @return Whether the job field is set.
         */
        boolean hasJob();

        /**
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
         *
         * @return The job.
         */
        Job getJob();

        /**
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
         */
        JobOrBuilder getJobOrBuilder();
    }

    /**
     * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.Task}
     */
    public static final class Task extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:com.welab.wefe.gateway.api.meta.basic.Task)
            TaskOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use Task.newBuilder() to construct.
        private Task(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private Task() {
            taskId_ = "";
            taskName_ = "";
        }

        @Override
        @SuppressWarnings({"unused"})
        protected Object newInstance(
                UnusedPrivateParameter unused) {
            return new Task();
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private Task(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {
                            String s = input.readStringRequireUtf8();

                            taskId_ = s;
                            break;
                        }
                        case 18: {
                            String s = input.readStringRequireUtf8();

                            taskName_ = s;
                            break;
                        }
                        case 26: {
                            Job.Builder subBuilder = null;
                            if (job_ != null) {
                                subBuilder = job_.toBuilder();
                            }
                            job_ = input.readMessage(Job.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(job_);
                                job_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        default: {
                            if (!parseUnknownField(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Task_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Task_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            Task.class, Builder.class);
        }

        public static final int TASKID_FIELD_NUMBER = 1;
        private volatile Object taskId_;

        /**
         * <pre>
         * 任务ID
         * </pre>
         *
         * <code>string taskId = 1;</code>
         *
         * @return The taskId.
         */
        public String getTaskId() {
            Object ref = taskId_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                taskId_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * 任务ID
         * </pre>
         *
         * <code>string taskId = 1;</code>
         *
         * @return The bytes for taskId.
         */
        public com.google.protobuf.ByteString
        getTaskIdBytes() {
            Object ref = taskId_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                taskId_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int TASKNAME_FIELD_NUMBER = 2;
        private volatile Object taskName_;

        /**
         * <pre>
         * 任务名称
         * </pre>
         *
         * <code>string taskName = 2;</code>
         *
         * @return The taskName.
         */
        public String getTaskName() {
            Object ref = taskName_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                taskName_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * 任务名称
         * </pre>
         *
         * <code>string taskName = 2;</code>
         *
         * @return The bytes for taskName.
         */
        public com.google.protobuf.ByteString
        getTaskNameBytes() {
            Object ref = taskName_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                taskName_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int JOB_FIELD_NUMBER = 3;
        private Job job_;

        /**
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
         *
         * @return Whether the job field is set.
         */
        public boolean hasJob() {
            return job_ != null;
        }

        /**
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
         *
         * @return The job.
         */
        public Job getJob() {
            return job_ == null ? Job.getDefaultInstance() : job_;
        }

        /**
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
         */
        public JobOrBuilder getJobOrBuilder() {
            return getJob();
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (!getTaskIdBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 1, taskId_);
            }
            if (!getTaskNameBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 2, taskName_);
            }
            if (job_ != null) {
                output.writeMessage(3, getJob());
            }
            unknownFields.writeTo(output);
        }

        @Override
        public int getSerializedSize() {
            int size = memoizedSize;
            if (size != -1) return size;

            size = 0;
            if (!getTaskIdBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, taskId_);
            }
            if (!getTaskNameBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, taskName_);
            }
            if (job_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(3, getJob());
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof Task)) {
                return super.equals(obj);
            }
            Task other = (Task) obj;

            if (!getTaskId()
                    .equals(other.getTaskId())) return false;
            if (!getTaskName()
                    .equals(other.getTaskName())) return false;
            if (hasJob() != other.hasJob()) return false;
            if (hasJob()) {
                if (!getJob()
                        .equals(other.getJob())) return false;
            }
            if (!unknownFields.equals(other.unknownFields)) return false;
            return true;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + TASKID_FIELD_NUMBER;
            hash = (53 * hash) + getTaskId().hashCode();
            hash = (37 * hash) + TASKNAME_FIELD_NUMBER;
            hash = (53 * hash) + getTaskName().hashCode();
            if (hasJob()) {
                hash = (37 * hash) + JOB_FIELD_NUMBER;
                hash = (53 * hash) + getJob().hashCode();
            }
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static Task parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Task parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Task parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Task parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Task parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Task parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Task parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static Task parseFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        public static Task parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static Task parseDelimitedFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
        }

        public static Task parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static Task parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(Task prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.Task}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:com.welab.wefe.gateway.api.meta.basic.Task)
                TaskOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Task_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Task_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                Task.class, Builder.class);
            }

            // Construct using com.welab.wefe.gateway.api.meta.basic.GatewayMetaProto.Task.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                taskId_ = "";

                taskName_ = "";

                if (jobBuilder_ == null) {
                    job_ = null;
                } else {
                    job_ = null;
                    jobBuilder_ = null;
                }
                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Task_descriptor;
            }

            @Override
            public Task getDefaultInstanceForType() {
                return Task.getDefaultInstance();
            }

            @Override
            public Task build() {
                Task result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public Task buildPartial() {
                Task result = new Task(this);
                result.taskId_ = taskId_;
                result.taskName_ = taskName_;
                if (jobBuilder_ == null) {
                    result.job_ = job_;
                } else {
                    result.job_ = jobBuilder_.build();
                }
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof Task) {
                    return mergeFrom((Task) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(Task other) {
                if (other == Task.getDefaultInstance()) return this;
                if (!other.getTaskId().isEmpty()) {
                    taskId_ = other.taskId_;
                    onChanged();
                }
                if (!other.getTaskName().isEmpty()) {
                    taskName_ = other.taskName_;
                    onChanged();
                }
                if (other.hasJob()) {
                    mergeJob(other.getJob());
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

            @Override
            public final boolean isInitialized() {
                return true;
            }

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                Task parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (Task) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private Object taskId_ = "";

            /**
             * <pre>
             * 任务ID
             * </pre>
             *
             * <code>string taskId = 1;</code>
             *
             * @return The taskId.
             */
            public String getTaskId() {
                Object ref = taskId_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    taskId_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * 任务ID
             * </pre>
             *
             * <code>string taskId = 1;</code>
             *
             * @return The bytes for taskId.
             */
            public com.google.protobuf.ByteString
            getTaskIdBytes() {
                Object ref = taskId_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    taskId_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * 任务ID
             * </pre>
             *
             * <code>string taskId = 1;</code>
             *
             * @param value The taskId to set.
             * @return This builder for chaining.
             */
            public Builder setTaskId(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                taskId_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 任务ID
             * </pre>
             *
             * <code>string taskId = 1;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearTaskId() {

                taskId_ = getDefaultInstance().getTaskId();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 任务ID
             * </pre>
             *
             * <code>string taskId = 1;</code>
             *
             * @param value The bytes for taskId to set.
             * @return This builder for chaining.
             */
            public Builder setTaskIdBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                taskId_ = value;
                onChanged();
                return this;
            }

            private Object taskName_ = "";

            /**
             * <pre>
             * 任务名称
             * </pre>
             *
             * <code>string taskName = 2;</code>
             *
             * @return The taskName.
             */
            public String getTaskName() {
                Object ref = taskName_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    taskName_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * 任务名称
             * </pre>
             *
             * <code>string taskName = 2;</code>
             *
             * @return The bytes for taskName.
             */
            public com.google.protobuf.ByteString
            getTaskNameBytes() {
                Object ref = taskName_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    taskName_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * 任务名称
             * </pre>
             *
             * <code>string taskName = 2;</code>
             *
             * @param value The taskName to set.
             * @return This builder for chaining.
             */
            public Builder setTaskName(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                taskName_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 任务名称
             * </pre>
             *
             * <code>string taskName = 2;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearTaskName() {

                taskName_ = getDefaultInstance().getTaskName();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 任务名称
             * </pre>
             *
             * <code>string taskName = 2;</code>
             *
             * @param value The bytes for taskName to set.
             * @return This builder for chaining.
             */
            public Builder setTaskNameBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                taskName_ = value;
                onChanged();
                return this;
            }

            private Job job_;
            private com.google.protobuf.SingleFieldBuilderV3<
                    Job, Job.Builder, JobOrBuilder> jobBuilder_;

            /**
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
             *
             * @return Whether the job field is set.
             */
            public boolean hasJob() {
                return jobBuilder_ != null || job_ != null;
            }

            /**
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
             *
             * @return The job.
             */
            public Job getJob() {
                if (jobBuilder_ == null) {
                    return job_ == null ? Job.getDefaultInstance() : job_;
                } else {
                    return jobBuilder_.getMessage();
                }
            }

            /**
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
             */
            public Builder setJob(Job value) {
                if (jobBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    job_ = value;
                    onChanged();
                } else {
                    jobBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
             */
            public Builder setJob(
                    Job.Builder builderForValue) {
                if (jobBuilder_ == null) {
                    job_ = builderForValue.build();
                    onChanged();
                } else {
                    jobBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
             */
            public Builder mergeJob(Job value) {
                if (jobBuilder_ == null) {
                    if (job_ != null) {
                        job_ =
                                Job.newBuilder(job_).mergeFrom(value).buildPartial();
                    } else {
                        job_ = value;
                    }
                    onChanged();
                } else {
                    jobBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
             */
            public Builder clearJob() {
                if (jobBuilder_ == null) {
                    job_ = null;
                    onChanged();
                } else {
                    job_ = null;
                    jobBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
             */
            public Job.Builder getJobBuilder() {

                onChanged();
                return getJobFieldBuilder().getBuilder();
            }

            /**
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
             */
            public JobOrBuilder getJobOrBuilder() {
                if (jobBuilder_ != null) {
                    return jobBuilder_.getMessageOrBuilder();
                } else {
                    return job_ == null ?
                            Job.getDefaultInstance() : job_;
                }
            }

            /**
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 3;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    Job, Job.Builder, JobOrBuilder>
            getJobFieldBuilder() {
                if (jobBuilder_ == null) {
                    jobBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            Job, Job.Builder, JobOrBuilder>(
                            getJob(),
                            getParentForChildren(),
                            isClean());
                    job_ = null;
                }
                return jobBuilder_;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFields(unknownFields);
            }

            @Override
            public final Builder mergeUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.mergeUnknownFields(unknownFields);
            }


            // @@protoc_insertion_point(builder_scope:com.welab.wefe.gateway.api.meta.basic.Task)
        }

        // @@protoc_insertion_point(class_scope:com.welab.wefe.gateway.api.meta.basic.Task)
        private static final Task DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new Task();
        }

        public static Task getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<Task>
                PARSER = new com.google.protobuf.AbstractParser<Task>() {
            @Override
            public Task parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new Task(input, extensionRegistry);
            }
        };

        public static com.google.protobuf.Parser<Task> parser() {
            return PARSER;
        }

        @Override
        public com.google.protobuf.Parser<Task> getParserForType() {
            return PARSER;
        }

        @Override
        public Task getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface MemberOrBuilder extends
            // @@protoc_insertion_point(interface_extends:com.welab.wefe.gateway.api.meta.basic.Member)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <pre>
         * 成员ID
         * </pre>
         *
         * <code>string memberId = 1;</code>
         *
         * @return The memberId.
         */
        String getMemberId();

        /**
         * <pre>
         * 成员ID
         * </pre>
         *
         * <code>string memberId = 1;</code>
         *
         * @return The bytes for memberId.
         */
        com.google.protobuf.ByteString
        getMemberIdBytes();

        /**
         * <pre>
         * 成功名称
         * </pre>
         *
         * <code>string memberName = 2;</code>
         *
         * @return The memberName.
         */
        String getMemberName();

        /**
         * <pre>
         * 成功名称
         * </pre>
         *
         * <code>string memberName = 2;</code>
         *
         * @return The bytes for memberName.
         */
        com.google.protobuf.ByteString
        getMemberNameBytes();

        /**
         * <pre>
         * 目地址
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
         *
         * @return Whether the endpoint field is set.
         */
        boolean hasEndpoint();

        /**
         * <pre>
         * 目地址
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
         *
         * @return The endpoint.
         */
        BasicMetaProto.Endpoint getEndpoint();

        /**
         * <pre>
         * 目地址
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
         */
        BasicMetaProto.EndpointOrBuilder getEndpointOrBuilder();
    }

    /**
     * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.Member}
     */
    public static final class Member extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:com.welab.wefe.gateway.api.meta.basic.Member)
            MemberOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use Member.newBuilder() to construct.
        private Member(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private Member() {
            memberId_ = "";
            memberName_ = "";
        }

        @Override
        @SuppressWarnings({"unused"})
        protected Object newInstance(
                UnusedPrivateParameter unused) {
            return new Member();
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private Member(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {
                            String s = input.readStringRequireUtf8();

                            memberId_ = s;
                            break;
                        }
                        case 18: {
                            String s = input.readStringRequireUtf8();

                            memberName_ = s;
                            break;
                        }
                        case 26: {
                            BasicMetaProto.Endpoint.Builder subBuilder = null;
                            if (endpoint_ != null) {
                                subBuilder = endpoint_.toBuilder();
                            }
                            endpoint_ = input.readMessage(BasicMetaProto.Endpoint.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(endpoint_);
                                endpoint_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        default: {
                            if (!parseUnknownField(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Member_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Member_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            Member.class, Builder.class);
        }

        public static final int MEMBERID_FIELD_NUMBER = 1;
        private volatile Object memberId_;

        /**
         * <pre>
         * 成员ID
         * </pre>
         *
         * <code>string memberId = 1;</code>
         *
         * @return The memberId.
         */
        public String getMemberId() {
            Object ref = memberId_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                memberId_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * 成员ID
         * </pre>
         *
         * <code>string memberId = 1;</code>
         *
         * @return The bytes for memberId.
         */
        public com.google.protobuf.ByteString
        getMemberIdBytes() {
            Object ref = memberId_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                memberId_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int MEMBERNAME_FIELD_NUMBER = 2;
        private volatile Object memberName_;

        /**
         * <pre>
         * 成功名称
         * </pre>
         *
         * <code>string memberName = 2;</code>
         *
         * @return The memberName.
         */
        public String getMemberName() {
            Object ref = memberName_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                memberName_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * 成功名称
         * </pre>
         *
         * <code>string memberName = 2;</code>
         *
         * @return The bytes for memberName.
         */
        public com.google.protobuf.ByteString
        getMemberNameBytes() {
            Object ref = memberName_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                memberName_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int ENDPOINT_FIELD_NUMBER = 3;
        private BasicMetaProto.Endpoint endpoint_;

        /**
         * <pre>
         * 目地址
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
         *
         * @return Whether the endpoint field is set.
         */
        public boolean hasEndpoint() {
            return endpoint_ != null;
        }

        /**
         * <pre>
         * 目地址
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
         *
         * @return The endpoint.
         */
        public BasicMetaProto.Endpoint getEndpoint() {
            return endpoint_ == null ? BasicMetaProto.Endpoint.getDefaultInstance() : endpoint_;
        }

        /**
         * <pre>
         * 目地址
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
         */
        public BasicMetaProto.EndpointOrBuilder getEndpointOrBuilder() {
            return getEndpoint();
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (!getMemberIdBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 1, memberId_);
            }
            if (!getMemberNameBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 2, memberName_);
            }
            if (endpoint_ != null) {
                output.writeMessage(3, getEndpoint());
            }
            unknownFields.writeTo(output);
        }

        @Override
        public int getSerializedSize() {
            int size = memoizedSize;
            if (size != -1) return size;

            size = 0;
            if (!getMemberIdBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, memberId_);
            }
            if (!getMemberNameBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, memberName_);
            }
            if (endpoint_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(3, getEndpoint());
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof Member)) {
                return super.equals(obj);
            }
            Member other = (Member) obj;

            if (!getMemberId()
                    .equals(other.getMemberId())) return false;
            if (!getMemberName()
                    .equals(other.getMemberName())) return false;
            if (hasEndpoint() != other.hasEndpoint()) return false;
            if (hasEndpoint()) {
                if (!getEndpoint()
                        .equals(other.getEndpoint())) return false;
            }
            if (!unknownFields.equals(other.unknownFields)) return false;
            return true;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + MEMBERID_FIELD_NUMBER;
            hash = (53 * hash) + getMemberId().hashCode();
            hash = (37 * hash) + MEMBERNAME_FIELD_NUMBER;
            hash = (53 * hash) + getMemberName().hashCode();
            if (hasEndpoint()) {
                hash = (37 * hash) + ENDPOINT_FIELD_NUMBER;
                hash = (53 * hash) + getEndpoint().hashCode();
            }
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static Member parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Member parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Member parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Member parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Member parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Member parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Member parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static Member parseFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        public static Member parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static Member parseDelimitedFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
        }

        public static Member parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static Member parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(Member prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.Member}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:com.welab.wefe.gateway.api.meta.basic.Member)
                MemberOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Member_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Member_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                Member.class, Builder.class);
            }

            // Construct using com.welab.wefe.gateway.api.meta.basic.GatewayMetaProto.Member.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                memberId_ = "";

                memberName_ = "";

                if (endpointBuilder_ == null) {
                    endpoint_ = null;
                } else {
                    endpoint_ = null;
                    endpointBuilder_ = null;
                }
                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Member_descriptor;
            }

            @Override
            public Member getDefaultInstanceForType() {
                return Member.getDefaultInstance();
            }

            @Override
            public Member build() {
                Member result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public Member buildPartial() {
                Member result = new Member(this);
                result.memberId_ = memberId_;
                result.memberName_ = memberName_;
                if (endpointBuilder_ == null) {
                    result.endpoint_ = endpoint_;
                } else {
                    result.endpoint_ = endpointBuilder_.build();
                }
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof Member) {
                    return mergeFrom((Member) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(Member other) {
                if (other == Member.getDefaultInstance()) return this;
                if (!other.getMemberId().isEmpty()) {
                    memberId_ = other.memberId_;
                    onChanged();
                }
                if (!other.getMemberName().isEmpty()) {
                    memberName_ = other.memberName_;
                    onChanged();
                }
                if (other.hasEndpoint()) {
                    mergeEndpoint(other.getEndpoint());
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

            @Override
            public final boolean isInitialized() {
                return true;
            }

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                Member parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (Member) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private Object memberId_ = "";

            /**
             * <pre>
             * 成员ID
             * </pre>
             *
             * <code>string memberId = 1;</code>
             *
             * @return The memberId.
             */
            public String getMemberId() {
                Object ref = memberId_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    memberId_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * 成员ID
             * </pre>
             *
             * <code>string memberId = 1;</code>
             *
             * @return The bytes for memberId.
             */
            public com.google.protobuf.ByteString
            getMemberIdBytes() {
                Object ref = memberId_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    memberId_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * 成员ID
             * </pre>
             *
             * <code>string memberId = 1;</code>
             *
             * @param value The memberId to set.
             * @return This builder for chaining.
             */
            public Builder setMemberId(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                memberId_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 成员ID
             * </pre>
             *
             * <code>string memberId = 1;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearMemberId() {

                memberId_ = getDefaultInstance().getMemberId();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 成员ID
             * </pre>
             *
             * <code>string memberId = 1;</code>
             *
             * @param value The bytes for memberId to set.
             * @return This builder for chaining.
             */
            public Builder setMemberIdBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                memberId_ = value;
                onChanged();
                return this;
            }

            private Object memberName_ = "";

            /**
             * <pre>
             * 成功名称
             * </pre>
             *
             * <code>string memberName = 2;</code>
             *
             * @return The memberName.
             */
            public String getMemberName() {
                Object ref = memberName_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    memberName_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * 成功名称
             * </pre>
             *
             * <code>string memberName = 2;</code>
             *
             * @return The bytes for memberName.
             */
            public com.google.protobuf.ByteString
            getMemberNameBytes() {
                Object ref = memberName_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    memberName_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * 成功名称
             * </pre>
             *
             * <code>string memberName = 2;</code>
             *
             * @param value The memberName to set.
             * @return This builder for chaining.
             */
            public Builder setMemberName(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                memberName_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 成功名称
             * </pre>
             *
             * <code>string memberName = 2;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearMemberName() {

                memberName_ = getDefaultInstance().getMemberName();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 成功名称
             * </pre>
             *
             * <code>string memberName = 2;</code>
             *
             * @param value The bytes for memberName to set.
             * @return This builder for chaining.
             */
            public Builder setMemberNameBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                memberName_ = value;
                onChanged();
                return this;
            }

            private BasicMetaProto.Endpoint endpoint_;
            private com.google.protobuf.SingleFieldBuilderV3<
                    BasicMetaProto.Endpoint, BasicMetaProto.Endpoint.Builder, BasicMetaProto.EndpointOrBuilder> endpointBuilder_;

            /**
             * <pre>
             * 目地址
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
             *
             * @return Whether the endpoint field is set.
             */
            public boolean hasEndpoint() {
                return endpointBuilder_ != null || endpoint_ != null;
            }

            /**
             * <pre>
             * 目地址
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
             *
             * @return The endpoint.
             */
            public BasicMetaProto.Endpoint getEndpoint() {
                if (endpointBuilder_ == null) {
                    return endpoint_ == null ? BasicMetaProto.Endpoint.getDefaultInstance() : endpoint_;
                } else {
                    return endpointBuilder_.getMessage();
                }
            }

            /**
             * <pre>
             * 目地址
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
             */
            public Builder setEndpoint(BasicMetaProto.Endpoint value) {
                if (endpointBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    endpoint_ = value;
                    onChanged();
                } else {
                    endpointBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <pre>
             * 目地址
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
             */
            public Builder setEndpoint(
                    BasicMetaProto.Endpoint.Builder builderForValue) {
                if (endpointBuilder_ == null) {
                    endpoint_ = builderForValue.build();
                    onChanged();
                } else {
                    endpointBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <pre>
             * 目地址
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
             */
            public Builder mergeEndpoint(BasicMetaProto.Endpoint value) {
                if (endpointBuilder_ == null) {
                    if (endpoint_ != null) {
                        endpoint_ =
                                BasicMetaProto.Endpoint.newBuilder(endpoint_).mergeFrom(value).buildPartial();
                    } else {
                        endpoint_ = value;
                    }
                    onChanged();
                } else {
                    endpointBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <pre>
             * 目地址
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
             */
            public Builder clearEndpoint() {
                if (endpointBuilder_ == null) {
                    endpoint_ = null;
                    onChanged();
                } else {
                    endpoint_ = null;
                    endpointBuilder_ = null;
                }

                return this;
            }

            /**
             * <pre>
             * 目地址
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
             */
            public BasicMetaProto.Endpoint.Builder getEndpointBuilder() {

                onChanged();
                return getEndpointFieldBuilder().getBuilder();
            }

            /**
             * <pre>
             * 目地址
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
             */
            public BasicMetaProto.EndpointOrBuilder getEndpointOrBuilder() {
                if (endpointBuilder_ != null) {
                    return endpointBuilder_.getMessageOrBuilder();
                } else {
                    return endpoint_ == null ?
                            BasicMetaProto.Endpoint.getDefaultInstance() : endpoint_;
                }
            }

            /**
             * <pre>
             * 目地址
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Endpoint endpoint = 3;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    BasicMetaProto.Endpoint, BasicMetaProto.Endpoint.Builder, BasicMetaProto.EndpointOrBuilder>
            getEndpointFieldBuilder() {
                if (endpointBuilder_ == null) {
                    endpointBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            BasicMetaProto.Endpoint, BasicMetaProto.Endpoint.Builder, BasicMetaProto.EndpointOrBuilder>(
                            getEndpoint(),
                            getParentForChildren(),
                            isClean());
                    endpoint_ = null;
                }
                return endpointBuilder_;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFields(unknownFields);
            }

            @Override
            public final Builder mergeUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.mergeUnknownFields(unknownFields);
            }


            // @@protoc_insertion_point(builder_scope:com.welab.wefe.gateway.api.meta.basic.Member)
        }

        // @@protoc_insertion_point(class_scope:com.welab.wefe.gateway.api.meta.basic.Member)
        private static final Member DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new Member();
        }

        public static Member getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<Member>
                PARSER = new com.google.protobuf.AbstractParser<Member>() {
            @Override
            public Member parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new Member(input, extensionRegistry);
            }
        };

        public static com.google.protobuf.Parser<Member> parser() {
            return PARSER;
        }

        @Override
        public com.google.protobuf.Parser<Member> getParserForType() {
            return PARSER;
        }

        @Override
        public Member getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface ContentOrBuilder extends
            // @@protoc_insertion_point(interface_extends:com.welab.wefe.gateway.api.meta.basic.Content)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <pre>
         * 小数据类型的Action；如配置文件里的object.actions.memory和object.actions.db指定类型的数据载体
         * </pre>
         *
         * <code>string objectData = 1;</code>
         *
         * @return The objectData.
         */
        String getObjectData();

        /**
         * <pre>
         * 小数据类型的Action；如配置文件里的object.actions.memory和object.actions.db指定类型的数据载体
         * </pre>
         *
         * <code>string objectData = 1;</code>
         *
         * @return The bytes for objectData.
         */
        com.google.protobuf.ByteString
        getObjectDataBytes();

        /**
         * <pre>
         * 小数据类型的用二进制数据载体
         * </pre>
         *
         * <code>bytes objectByteData = 3;</code>
         *
         * @return The objectByteData.
         */
        com.google.protobuf.ByteString getObjectByteData();

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        java.util.List<ConfigData>
        getConfigDatasList();

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        ConfigData getConfigDatas(int index);

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        int getConfigDatasCount();

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        java.util.List<? extends ConfigDataOrBuilder>
        getConfigDatasOrBuilderList();

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        ConfigDataOrBuilder getConfigDatasOrBuilder(
                int index);
    }

    /**
     * <pre>
     * 传输内容；如果Action为object.actions.db指定类型的，则objectData的json结构必须有namespace（库名）和name（表名）这两个字段
     * </pre>
     * <p>
     * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.Content}
     */
    public static final class Content extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:com.welab.wefe.gateway.api.meta.basic.Content)
            ContentOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use Content.newBuilder() to construct.
        private Content(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private Content() {
            objectData_ = "";
            objectByteData_ = com.google.protobuf.ByteString.EMPTY;
            configDatas_ = java.util.Collections.emptyList();
        }

        @Override
        @SuppressWarnings({"unused"})
        protected Object newInstance(
                UnusedPrivateParameter unused) {
            return new Content();
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private Content(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {
                            String s = input.readStringRequireUtf8();

                            objectData_ = s;
                            break;
                        }
                        case 18: {
                            if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                                configDatas_ = new java.util.ArrayList<>();
                                mutable_bitField0_ |= 0x00000001;
                            }
                            configDatas_.add(
                                    input.readMessage(ConfigData.parser(), extensionRegistry));
                            break;
                        }
                        case 26: {

                            objectByteData_ = input.readBytes();
                            break;
                        }
                        default: {
                            if (!parseUnknownField(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                if (((mutable_bitField0_ & 0x00000001) != 0)) {
                    configDatas_ = java.util.Collections.unmodifiableList(configDatas_);
                }
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Content_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Content_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            Content.class, Builder.class);
        }

        public static final int OBJECTDATA_FIELD_NUMBER = 1;
        private volatile Object objectData_;

        /**
         * <pre>
         * 小数据类型的Action；如配置文件里的object.actions.memory和object.actions.db指定类型的数据载体
         * </pre>
         *
         * <code>string objectData = 1;</code>
         *
         * @return The objectData.
         */
        public String getObjectData() {
            Object ref = objectData_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                objectData_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * 小数据类型的Action；如配置文件里的object.actions.memory和object.actions.db指定类型的数据载体
         * </pre>
         *
         * <code>string objectData = 1;</code>
         *
         * @return The bytes for objectData.
         */
        public com.google.protobuf.ByteString
        getObjectDataBytes() {
            Object ref = objectData_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                objectData_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int OBJECTBYTEDATA_FIELD_NUMBER = 3;
        private com.google.protobuf.ByteString objectByteData_;

        /**
         * <pre>
         * 小数据类型的用二进制数据载体
         * </pre>
         *
         * <code>bytes objectByteData = 3;</code>
         *
         * @return The objectByteData.
         */
        public com.google.protobuf.ByteString getObjectByteData() {
            return objectByteData_;
        }

        public static final int CONFIGDATAS_FIELD_NUMBER = 2;
        private java.util.List<ConfigData> configDatas_;

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        public java.util.List<ConfigData> getConfigDatasList() {
            return configDatas_;
        }

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        public java.util.List<? extends ConfigDataOrBuilder>
        getConfigDatasOrBuilderList() {
            return configDatas_;
        }

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        public int getConfigDatasCount() {
            return configDatas_.size();
        }

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        public ConfigData getConfigDatas(int index) {
            return configDatas_.get(index);
        }

        /**
         * <pre>
         * Action为config.actions指定类型的数据载体
         * </pre>
         *
         * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
         */
        public ConfigDataOrBuilder getConfigDatasOrBuilder(
                int index) {
            return configDatas_.get(index);
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (!getObjectDataBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 1, objectData_);
            }
            for (int i = 0; i < configDatas_.size(); i++) {
                output.writeMessage(2, configDatas_.get(i));
            }
            if (!objectByteData_.isEmpty()) {
                output.writeBytes(3, objectByteData_);
            }
            unknownFields.writeTo(output);
        }

        @Override
        public int getSerializedSize() {
            int size = memoizedSize;
            if (size != -1) return size;

            size = 0;
            if (!getObjectDataBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, objectData_);
            }
            for (int i = 0; i < configDatas_.size(); i++) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(2, configDatas_.get(i));
            }
            if (!objectByteData_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(3, objectByteData_);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof Content)) {
                return super.equals(obj);
            }
            Content other = (Content) obj;

            if (!getObjectData()
                    .equals(other.getObjectData())) return false;
            if (!getObjectByteData()
                    .equals(other.getObjectByteData())) return false;
            if (!getConfigDatasList()
                    .equals(other.getConfigDatasList())) return false;
            if (!unknownFields.equals(other.unknownFields)) return false;
            return true;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + OBJECTDATA_FIELD_NUMBER;
            hash = (53 * hash) + getObjectData().hashCode();
            hash = (37 * hash) + OBJECTBYTEDATA_FIELD_NUMBER;
            hash = (53 * hash) + getObjectByteData().hashCode();
            if (getConfigDatasCount() > 0) {
                hash = (37 * hash) + CONFIGDATAS_FIELD_NUMBER;
                hash = (53 * hash) + getConfigDatasList().hashCode();
            }
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static Content parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Content parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Content parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Content parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Content parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static Content parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static Content parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static Content parseFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        public static Content parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static Content parseDelimitedFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
        }

        public static Content parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static Content parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(Content prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * <pre>
         * 传输内容；如果Action为object.actions.db指定类型的，则objectData的json结构必须有namespace（库名）和name（表名）这两个字段
         * </pre>
         * <p>
         * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.Content}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:com.welab.wefe.gateway.api.meta.basic.Content)
                ContentOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Content_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Content_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                Content.class, Builder.class);
            }

            // Construct using com.welab.wefe.gateway.api.meta.basic.GatewayMetaProto.Content.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                    getConfigDatasFieldBuilder();
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                objectData_ = "";

                objectByteData_ = com.google.protobuf.ByteString.EMPTY;

                if (configDatasBuilder_ == null) {
                    configDatas_ = java.util.Collections.emptyList();
                    bitField0_ = (bitField0_ & ~0x00000001);
                } else {
                    configDatasBuilder_.clear();
                }
                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_Content_descriptor;
            }

            @Override
            public Content getDefaultInstanceForType() {
                return Content.getDefaultInstance();
            }

            @Override
            public Content build() {
                Content result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public Content buildPartial() {
                Content result = new Content(this);
                int from_bitField0_ = bitField0_;
                result.objectData_ = objectData_;
                result.objectByteData_ = objectByteData_;
                if (configDatasBuilder_ == null) {
                    if (((bitField0_ & 0x00000001) != 0)) {
                        configDatas_ = java.util.Collections.unmodifiableList(configDatas_);
                        bitField0_ = (bitField0_ & ~0x00000001);
                    }
                    result.configDatas_ = configDatas_;
                } else {
                    result.configDatas_ = configDatasBuilder_.build();
                }
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof Content) {
                    return mergeFrom((Content) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(Content other) {
                if (other == Content.getDefaultInstance()) return this;
                if (!other.getObjectData().isEmpty()) {
                    objectData_ = other.objectData_;
                    onChanged();
                }
                if (other.getObjectByteData() != com.google.protobuf.ByteString.EMPTY) {
                    setObjectByteData(other.getObjectByteData());
                }
                if (configDatasBuilder_ == null) {
                    if (!other.configDatas_.isEmpty()) {
                        if (configDatas_.isEmpty()) {
                            configDatas_ = other.configDatas_;
                            bitField0_ = (bitField0_ & ~0x00000001);
                        } else {
                            ensureConfigDatasIsMutable();
                            configDatas_.addAll(other.configDatas_);
                        }
                        onChanged();
                    }
                } else {
                    if (!other.configDatas_.isEmpty()) {
                        if (configDatasBuilder_.isEmpty()) {
                            configDatasBuilder_.dispose();
                            configDatasBuilder_ = null;
                            configDatas_ = other.configDatas_;
                            bitField0_ = (bitField0_ & ~0x00000001);
                            configDatasBuilder_ =
                                    com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                                            getConfigDatasFieldBuilder() : null;
                        } else {
                            configDatasBuilder_.addAllMessages(other.configDatas_);
                        }
                    }
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

            @Override
            public final boolean isInitialized() {
                return true;
            }

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                Content parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (Content) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private int bitField0_;

            private Object objectData_ = "";

            /**
             * <pre>
             * 小数据类型的Action；如配置文件里的object.actions.memory和object.actions.db指定类型的数据载体
             * </pre>
             *
             * <code>string objectData = 1;</code>
             *
             * @return The objectData.
             */
            public String getObjectData() {
                Object ref = objectData_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    objectData_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * 小数据类型的Action；如配置文件里的object.actions.memory和object.actions.db指定类型的数据载体
             * </pre>
             *
             * <code>string objectData = 1;</code>
             *
             * @return The bytes for objectData.
             */
            public com.google.protobuf.ByteString
            getObjectDataBytes() {
                Object ref = objectData_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    objectData_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * 小数据类型的Action；如配置文件里的object.actions.memory和object.actions.db指定类型的数据载体
             * </pre>
             *
             * <code>string objectData = 1;</code>
             *
             * @param value The objectData to set.
             * @return This builder for chaining.
             */
            public Builder setObjectData(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                objectData_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 小数据类型的Action；如配置文件里的object.actions.memory和object.actions.db指定类型的数据载体
             * </pre>
             *
             * <code>string objectData = 1;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearObjectData() {

                objectData_ = getDefaultInstance().getObjectData();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 小数据类型的Action；如配置文件里的object.actions.memory和object.actions.db指定类型的数据载体
             * </pre>
             *
             * <code>string objectData = 1;</code>
             *
             * @param value The bytes for objectData to set.
             * @return This builder for chaining.
             */
            public Builder setObjectDataBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                objectData_ = value;
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString objectByteData_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <pre>
             * 小数据类型的用二进制数据载体
             * </pre>
             *
             * <code>bytes objectByteData = 3;</code>
             *
             * @return The objectByteData.
             */
            public com.google.protobuf.ByteString getObjectByteData() {
                return objectByteData_;
            }

            /**
             * <pre>
             * 小数据类型的用二进制数据载体
             * </pre>
             *
             * <code>bytes objectByteData = 3;</code>
             *
             * @param value The objectByteData to set.
             * @return This builder for chaining.
             */
            public Builder setObjectByteData(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                objectByteData_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 小数据类型的用二进制数据载体
             * </pre>
             *
             * <code>bytes objectByteData = 3;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearObjectByteData() {

                objectByteData_ = getDefaultInstance().getObjectByteData();
                onChanged();
                return this;
            }

            private java.util.List<ConfigData> configDatas_ =
                    java.util.Collections.emptyList();

            private void ensureConfigDatasIsMutable() {
                if (!((bitField0_ & 0x00000001) != 0)) {
                    configDatas_ = new java.util.ArrayList<ConfigData>(configDatas_);
                    bitField0_ |= 0x00000001;
                }
            }

            private com.google.protobuf.RepeatedFieldBuilderV3<
                    ConfigData, ConfigData.Builder, ConfigDataOrBuilder> configDatasBuilder_;

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public java.util.List<ConfigData> getConfigDatasList() {
                if (configDatasBuilder_ == null) {
                    return java.util.Collections.unmodifiableList(configDatas_);
                } else {
                    return configDatasBuilder_.getMessageList();
                }
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public int getConfigDatasCount() {
                if (configDatasBuilder_ == null) {
                    return configDatas_.size();
                } else {
                    return configDatasBuilder_.getCount();
                }
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public ConfigData getConfigDatas(int index) {
                if (configDatasBuilder_ == null) {
                    return configDatas_.get(index);
                } else {
                    return configDatasBuilder_.getMessage(index);
                }
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public Builder setConfigDatas(
                    int index, ConfigData value) {
                if (configDatasBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    ensureConfigDatasIsMutable();
                    configDatas_.set(index, value);
                    onChanged();
                } else {
                    configDatasBuilder_.setMessage(index, value);
                }
                return this;
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public Builder setConfigDatas(
                    int index, ConfigData.Builder builderForValue) {
                if (configDatasBuilder_ == null) {
                    ensureConfigDatasIsMutable();
                    configDatas_.set(index, builderForValue.build());
                    onChanged();
                } else {
                    configDatasBuilder_.setMessage(index, builderForValue.build());
                }
                return this;
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public Builder addConfigDatas(ConfigData value) {
                if (configDatasBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    ensureConfigDatasIsMutable();
                    configDatas_.add(value);
                    onChanged();
                } else {
                    configDatasBuilder_.addMessage(value);
                }
                return this;
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public Builder addConfigDatas(
                    int index, ConfigData value) {
                if (configDatasBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    ensureConfigDatasIsMutable();
                    configDatas_.add(index, value);
                    onChanged();
                } else {
                    configDatasBuilder_.addMessage(index, value);
                }
                return this;
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public Builder addConfigDatas(
                    ConfigData.Builder builderForValue) {
                if (configDatasBuilder_ == null) {
                    ensureConfigDatasIsMutable();
                    configDatas_.add(builderForValue.build());
                    onChanged();
                } else {
                    configDatasBuilder_.addMessage(builderForValue.build());
                }
                return this;
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public Builder addConfigDatas(
                    int index, ConfigData.Builder builderForValue) {
                if (configDatasBuilder_ == null) {
                    ensureConfigDatasIsMutable();
                    configDatas_.add(index, builderForValue.build());
                    onChanged();
                } else {
                    configDatasBuilder_.addMessage(index, builderForValue.build());
                }
                return this;
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public Builder addAllConfigDatas(
                    Iterable<? extends ConfigData> values) {
                if (configDatasBuilder_ == null) {
                    ensureConfigDatasIsMutable();
                    com.google.protobuf.AbstractMessageLite.Builder.addAll(
                            values, configDatas_);
                    onChanged();
                } else {
                    configDatasBuilder_.addAllMessages(values);
                }
                return this;
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public Builder clearConfigDatas() {
                if (configDatasBuilder_ == null) {
                    configDatas_ = java.util.Collections.emptyList();
                    bitField0_ = (bitField0_ & ~0x00000001);
                    onChanged();
                } else {
                    configDatasBuilder_.clear();
                }
                return this;
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public Builder removeConfigDatas(int index) {
                if (configDatasBuilder_ == null) {
                    ensureConfigDatasIsMutable();
                    configDatas_.remove(index);
                    onChanged();
                } else {
                    configDatasBuilder_.remove(index);
                }
                return this;
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public ConfigData.Builder getConfigDatasBuilder(
                    int index) {
                return getConfigDatasFieldBuilder().getBuilder(index);
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public ConfigDataOrBuilder getConfigDatasOrBuilder(
                    int index) {
                if (configDatasBuilder_ == null) {
                    return configDatas_.get(index);
                } else {
                    return configDatasBuilder_.getMessageOrBuilder(index);
                }
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public java.util.List<? extends ConfigDataOrBuilder>
            getConfigDatasOrBuilderList() {
                if (configDatasBuilder_ != null) {
                    return configDatasBuilder_.getMessageOrBuilderList();
                } else {
                    return java.util.Collections.unmodifiableList(configDatas_);
                }
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public ConfigData.Builder addConfigDatasBuilder() {
                return getConfigDatasFieldBuilder().addBuilder(
                        ConfigData.getDefaultInstance());
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public ConfigData.Builder addConfigDatasBuilder(
                    int index) {
                return getConfigDatasFieldBuilder().addBuilder(
                        index, ConfigData.getDefaultInstance());
            }

            /**
             * <pre>
             * Action为config.actions指定类型的数据载体
             * </pre>
             *
             * <code>repeated .com.welab.wefe.gateway.api.meta.basic.ConfigData configDatas = 2;</code>
             */
            public java.util.List<ConfigData.Builder>
            getConfigDatasBuilderList() {
                return getConfigDatasFieldBuilder().getBuilderList();
            }

            private com.google.protobuf.RepeatedFieldBuilderV3<
                    ConfigData, ConfigData.Builder, ConfigDataOrBuilder>
            getConfigDatasFieldBuilder() {
                if (configDatasBuilder_ == null) {
                    configDatasBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                            ConfigData, ConfigData.Builder, ConfigDataOrBuilder>(
                            configDatas_,
                            ((bitField0_ & 0x00000001) != 0),
                            getParentForChildren(),
                            isClean());
                    configDatas_ = null;
                }
                return configDatasBuilder_;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFields(unknownFields);
            }

            @Override
            public final Builder mergeUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.mergeUnknownFields(unknownFields);
            }


            // @@protoc_insertion_point(builder_scope:com.welab.wefe.gateway.api.meta.basic.Content)
        }

        // @@protoc_insertion_point(class_scope:com.welab.wefe.gateway.api.meta.basic.Content)
        private static final Content DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new Content();
        }

        public static Content getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<Content>
                PARSER = new com.google.protobuf.AbstractParser<Content>() {
            @Override
            public Content parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new Content(input, extensionRegistry);
            }
        };

        public static com.google.protobuf.Parser<Content> parser() {
            return PARSER;
        }

        @Override
        public com.google.protobuf.Parser<Content> getParserForType() {
            return PARSER;
        }

        @Override
        public Content getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface ConfigDataOrBuilder extends
            // @@protoc_insertion_point(interface_extends:com.welab.wefe.gateway.api.meta.basic.ConfigData)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <code>bytes key = 1;</code>
         *
         * @return The key.
         */
        com.google.protobuf.ByteString getKey();

        /**
         * <code>bytes value = 2;</code>
         *
         * @return The value.
         */
        com.google.protobuf.ByteString getValue();
    }

    /**
     * <pre>
     * 用于传送大数据（dsource类型的action）的载体
     * </pre>
     * <p>
     * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.ConfigData}
     */
    public static final class ConfigData extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:com.welab.wefe.gateway.api.meta.basic.ConfigData)
            ConfigDataOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use ConfigData.newBuilder() to construct.
        private ConfigData(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private ConfigData() {
            key_ = com.google.protobuf.ByteString.EMPTY;
            value_ = com.google.protobuf.ByteString.EMPTY;
        }

        @Override
        @SuppressWarnings({"unused"})
        protected Object newInstance(
                UnusedPrivateParameter unused) {
            return new ConfigData();
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private ConfigData(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {

                            key_ = input.readBytes();
                            break;
                        }
                        case 18: {

                            value_ = input.readBytes();
                            break;
                        }
                        default: {
                            if (!parseUnknownField(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            ConfigData.class, Builder.class);
        }

        public static final int KEY_FIELD_NUMBER = 1;
        private com.google.protobuf.ByteString key_;

        /**
         * <code>bytes key = 1;</code>
         *
         * @return The key.
         */
        public com.google.protobuf.ByteString getKey() {
            return key_;
        }

        public static final int VALUE_FIELD_NUMBER = 2;
        private com.google.protobuf.ByteString value_;

        /**
         * <code>bytes value = 2;</code>
         *
         * @return The value.
         */
        public com.google.protobuf.ByteString getValue() {
            return value_;
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (!key_.isEmpty()) {
                output.writeBytes(1, key_);
            }
            if (!value_.isEmpty()) {
                output.writeBytes(2, value_);
            }
            unknownFields.writeTo(output);
        }

        @Override
        public int getSerializedSize() {
            int size = memoizedSize;
            if (size != -1) return size;

            size = 0;
            if (!key_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(1, key_);
            }
            if (!value_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(2, value_);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof ConfigData)) {
                return super.equals(obj);
            }
            ConfigData other = (ConfigData) obj;

            if (!getKey()
                    .equals(other.getKey())) return false;
            if (!getValue()
                    .equals(other.getValue())) return false;
            if (!unknownFields.equals(other.unknownFields)) return false;
            return true;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + KEY_FIELD_NUMBER;
            hash = (53 * hash) + getKey().hashCode();
            hash = (37 * hash) + VALUE_FIELD_NUMBER;
            hash = (53 * hash) + getValue().hashCode();
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static ConfigData parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static ConfigData parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static ConfigData parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static ConfigData parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static ConfigData parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static ConfigData parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static ConfigData parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static ConfigData parseFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        public static ConfigData parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static ConfigData parseDelimitedFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
        }

        public static ConfigData parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static ConfigData parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(ConfigData prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * <pre>
         * 用于传送大数据（dsource类型的action）的载体
         * </pre>
         * <p>
         * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.ConfigData}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:com.welab.wefe.gateway.api.meta.basic.ConfigData)
                ConfigDataOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                ConfigData.class, Builder.class);
            }

            // Construct using com.welab.wefe.gateway.api.meta.basic.GatewayMetaProto.ConfigData.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                key_ = com.google.protobuf.ByteString.EMPTY;

                value_ = com.google.protobuf.ByteString.EMPTY;

                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_descriptor;
            }

            @Override
            public ConfigData getDefaultInstanceForType() {
                return ConfigData.getDefaultInstance();
            }

            @Override
            public ConfigData build() {
                ConfigData result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public ConfigData buildPartial() {
                ConfigData result = new ConfigData(this);
                result.key_ = key_;
                result.value_ = value_;
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof ConfigData) {
                    return mergeFrom((ConfigData) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(ConfigData other) {
                if (other == ConfigData.getDefaultInstance()) return this;
                if (other.getKey() != com.google.protobuf.ByteString.EMPTY) {
                    setKey(other.getKey());
                }
                if (other.getValue() != com.google.protobuf.ByteString.EMPTY) {
                    setValue(other.getValue());
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

            @Override
            public final boolean isInitialized() {
                return true;
            }

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                ConfigData parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (ConfigData) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private com.google.protobuf.ByteString key_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes key = 1;</code>
             *
             * @return The key.
             */
            public com.google.protobuf.ByteString getKey() {
                return key_;
            }

            /**
             * <code>bytes key = 1;</code>
             *
             * @param value The key to set.
             * @return This builder for chaining.
             */
            public Builder setKey(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                key_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes key = 1;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearKey() {

                key_ = getDefaultInstance().getKey();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString value_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes value = 2;</code>
             *
             * @return The value.
             */
            public com.google.protobuf.ByteString getValue() {
                return value_;
            }

            /**
             * <code>bytes value = 2;</code>
             *
             * @param value The value to set.
             * @return This builder for chaining.
             */
            public Builder setValue(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                value_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes value = 2;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearValue() {

                value_ = getDefaultInstance().getValue();
                onChanged();
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFields(unknownFields);
            }

            @Override
            public final Builder mergeUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.mergeUnknownFields(unknownFields);
            }


            // @@protoc_insertion_point(builder_scope:com.welab.wefe.gateway.api.meta.basic.ConfigData)
        }

        // @@protoc_insertion_point(class_scope:com.welab.wefe.gateway.api.meta.basic.ConfigData)
        private static final ConfigData DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new ConfigData();
        }

        public static ConfigData getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<ConfigData>
                PARSER = new com.google.protobuf.AbstractParser<ConfigData>() {
            @Override
            public ConfigData parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new ConfigData(input, extensionRegistry);
            }
        };

        public static com.google.protobuf.Parser<ConfigData> parser() {
            return PARSER;
        }

        @Override
        public com.google.protobuf.Parser<ConfigData> getParserForType() {
            return PARSER;
        }

        @Override
        public ConfigData getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface TransferMetaOrBuilder extends
            // @@protoc_insertion_point(interface_extends:com.welab.wefe.gateway.api.meta.basic.TransferMeta)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <pre>
         * 作业信息 客户端传（可空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
         *
         * @return Whether the job field is set.
         */
        boolean hasJob();

        /**
         * <pre>
         * 作业信息 客户端传（可空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
         *
         * @return The job.
         */
        Job getJob();

        /**
         * <pre>
         * 作业信息 客户端传（可空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
         */
        JobOrBuilder getJobOrBuilder();

        /**
         * <pre>
         * 发送方 gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
         *
         * @return Whether the src field is set.
         */
        boolean hasSrc();

        /**
         * <pre>
         * 发送方 gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
         *
         * @return The src.
         */
        Member getSrc();

        /**
         * <pre>
         * 发送方 gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
         */
        MemberOrBuilder getSrcOrBuilder();

        /**
         * <pre>
         * 接收方gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
         *
         * @return Whether the dst field is set.
         */
        boolean hasDst();

        /**
         * <pre>
         * 接收方gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
         *
         * @return The dst.
         */
        Member getDst();

        /**
         * <pre>
         * 接收方gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
         */
        MemberOrBuilder getDstOrBuilder();

        /**
         * <pre>
         * 动作 客户端传（非空）
         * </pre>
         *
         * <code>string action = 4;</code>
         *
         * @return The action.
         */
        String getAction();

        /**
         * <pre>
         * 动作 客户端传（非空）
         * </pre>
         *
         * <code>string action = 4;</code>
         *
         * @return The bytes for action.
         */
        com.google.protobuf.ByteString
        getActionBytes();

        /**
         * <pre>
         * 内容 客户传（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
         *
         * @return Whether the content field is set.
         */
        boolean hasContent();

        /**
         * <pre>
         * 内容 客户传（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
         *
         * @return The content.
         */
        Content getContent();

        /**
         * <pre>
         * 内容 客户传（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
         */
        ContentOrBuilder getContentOrBuilder();

        /**
         * <pre>
         * 传输状态 gateway
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.TransferStatus transferStatus = 6;</code>
         *
         * @return The enum numeric value on the wire for transferStatus.
         */
        int getTransferStatusValue();

        /**
         * <pre>
         * 传输状态 gateway
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.TransferStatus transferStatus = 6;</code>
         *
         * @return The transferStatus.
         */
        TransferStatus getTransferStatus();

        /**
         * <pre>
         * 唯一标识ID，客户端传
         * </pre>
         *
         * <code>string sessionId = 7;</code>
         *
         * @return The sessionId.
         */
        String getSessionId();

        /**
         * <pre>
         * 唯一标识ID，客户端传
         * </pre>
         *
         * <code>string sessionId = 7;</code>
         *
         * @return The bytes for sessionId.
         */
        com.google.protobuf.ByteString
        getSessionIdBytes();

        /**
         * <pre>
         * 接收到数据的时间 gateway
         * </pre>
         *
         * <code>int64 receiveDate = 8;</code>
         *
         * @return The receiveDate.
         */
        long getReceiveDate();

        /**
         * <pre>
         * 数据过期时间 gateway
         * </pre>
         *
         * <code>int64 expireDate = 9;</code>
         *
         * @return The expireDate.
         */
        long getExpireDate();

        /**
         * <pre>
         * 序号 gateway
         * </pre>
         *
         * <code>int32 sequenceNo = 10;</code>
         *
         * @return The sequenceNo.
         */
        int getSequenceNo();

        /**
         * <pre>
         * 是否结束 gateway
         * </pre>
         *
         * <code>bool sequenceIsEnd = 11;</code>
         *
         * @return The sequenceIsEnd.
         */
        boolean getSequenceIsEnd();

        /**
         * <code>bytes taggedVariableName = 12;</code>
         *
         * @return The taggedVariableName.
         */
        com.google.protobuf.ByteString getTaggedVariableName();

        /**
         * <code>string tag = 13;</code>
         *
         * @return The tag.
         */
        String getTag();

        /**
         * <code>string tag = 13;</code>
         *
         * @return The bytes for tag.
         */
        com.google.protobuf.ByteString
        getTagBytes();

        /**
         * <code>string channel = 14;</code>
         *
         * @return The channel.
         */
        String getChannel();

        /**
         * <code>string channel = 14;</code>
         *
         * @return The bytes for channel.
         */
        com.google.protobuf.ByteString
        getChannelBytes();

        /**
         * <pre>
         * 处理器
         * </pre>
         *
         * <code>string processor = 15;</code>
         *
         * @return The processor.
         */
        String getProcessor();

        /**
         * <pre>
         * 处理器
         * </pre>
         *
         * <code>string processor = 15;</code>
         *
         * @return The bytes for processor.
         */
        com.google.protobuf.ByteString
        getProcessorBytes();
    }

    /**
     * <pre>
     * 网关收发的元数据
     * </pre>
     * <p>
     * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.TransferMeta}
     */
    public static final class TransferMeta extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:com.welab.wefe.gateway.api.meta.basic.TransferMeta)
            TransferMetaOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use TransferMeta.newBuilder() to construct.
        private TransferMeta(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private TransferMeta() {
            action_ = "";
            transferStatus_ = 0;
            sessionId_ = "";
            taggedVariableName_ = com.google.protobuf.ByteString.EMPTY;
            tag_ = "";
            channel_ = "";
            processor_ = "";
        }

        @Override
        @SuppressWarnings({"unused"})
        protected Object newInstance(
                UnusedPrivateParameter unused) {
            return new TransferMeta();
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private TransferMeta(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {
                            Job.Builder subBuilder = null;
                            if (job_ != null) {
                                subBuilder = job_.toBuilder();
                            }
                            job_ = input.readMessage(Job.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(job_);
                                job_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 18: {
                            Member.Builder subBuilder = null;
                            if (src_ != null) {
                                subBuilder = src_.toBuilder();
                            }
                            src_ = input.readMessage(Member.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(src_);
                                src_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 26: {
                            Member.Builder subBuilder = null;
                            if (dst_ != null) {
                                subBuilder = dst_.toBuilder();
                            }
                            dst_ = input.readMessage(Member.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(dst_);
                                dst_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 34: {
                            String s = input.readStringRequireUtf8();

                            action_ = s;
                            break;
                        }
                        case 42: {
                            Content.Builder subBuilder = null;
                            if (content_ != null) {
                                subBuilder = content_.toBuilder();
                            }
                            content_ = input.readMessage(Content.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(content_);
                                content_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 48: {
                            int rawValue = input.readEnum();

                            transferStatus_ = rawValue;
                            break;
                        }
                        case 58: {
                            String s = input.readStringRequireUtf8();

                            sessionId_ = s;
                            break;
                        }
                        case 64: {

                            receiveDate_ = input.readInt64();
                            break;
                        }
                        case 72: {

                            expireDate_ = input.readInt64();
                            break;
                        }
                        case 80: {

                            sequenceNo_ = input.readInt32();
                            break;
                        }
                        case 88: {

                            sequenceIsEnd_ = input.readBool();
                            break;
                        }
                        case 98: {

                            taggedVariableName_ = input.readBytes();
                            break;
                        }
                        case 106: {
                            String s = input.readStringRequireUtf8();

                            tag_ = s;
                            break;
                        }
                        case 114: {
                            String s = input.readStringRequireUtf8();

                            channel_ = s;
                            break;
                        }
                        case 122: {
                            String s = input.readStringRequireUtf8();

                            processor_ = s;
                            break;
                        }
                        default: {
                            if (!parseUnknownField(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            TransferMeta.class, Builder.class);
        }

        public static final int JOB_FIELD_NUMBER = 1;
        private Job job_;

        /**
         * <pre>
         * 作业信息 客户端传（可空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
         *
         * @return Whether the job field is set.
         */
        public boolean hasJob() {
            return job_ != null;
        }

        /**
         * <pre>
         * 作业信息 客户端传（可空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
         *
         * @return The job.
         */
        public Job getJob() {
            return job_ == null ? Job.getDefaultInstance() : job_;
        }

        /**
         * <pre>
         * 作业信息 客户端传（可空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
         */
        public JobOrBuilder getJobOrBuilder() {
            return getJob();
        }

        public static final int SRC_FIELD_NUMBER = 2;
        private Member src_;

        /**
         * <pre>
         * 发送方 gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
         *
         * @return Whether the src field is set.
         */
        public boolean hasSrc() {
            return src_ != null;
        }

        /**
         * <pre>
         * 发送方 gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
         *
         * @return The src.
         */
        public Member getSrc() {
            return src_ == null ? Member.getDefaultInstance() : src_;
        }

        /**
         * <pre>
         * 发送方 gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
         */
        public MemberOrBuilder getSrcOrBuilder() {
            return getSrc();
        }

        public static final int DST_FIELD_NUMBER = 3;
        private Member dst_;

        /**
         * <pre>
         * 接收方gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
         *
         * @return Whether the dst field is set.
         */
        public boolean hasDst() {
            return dst_ != null;
        }

        /**
         * <pre>
         * 接收方gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
         *
         * @return The dst.
         */
        public Member getDst() {
            return dst_ == null ? Member.getDefaultInstance() : dst_;
        }

        /**
         * <pre>
         * 接收方gateway（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
         */
        public MemberOrBuilder getDstOrBuilder() {
            return getDst();
        }

        public static final int ACTION_FIELD_NUMBER = 4;
        private volatile Object action_;

        /**
         * <pre>
         * 动作 客户端传（非空）
         * </pre>
         *
         * <code>string action = 4;</code>
         *
         * @return The action.
         */
        public String getAction() {
            Object ref = action_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                action_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * 动作 客户端传（非空）
         * </pre>
         *
         * <code>string action = 4;</code>
         *
         * @return The bytes for action.
         */
        public com.google.protobuf.ByteString
        getActionBytes() {
            Object ref = action_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                action_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int CONTENT_FIELD_NUMBER = 5;
        private Content content_;

        /**
         * <pre>
         * 内容 客户传（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
         *
         * @return Whether the content field is set.
         */
        public boolean hasContent() {
            return content_ != null;
        }

        /**
         * <pre>
         * 内容 客户传（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
         *
         * @return The content.
         */
        public Content getContent() {
            return content_ == null ? Content.getDefaultInstance() : content_;
        }

        /**
         * <pre>
         * 内容 客户传（非空）
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
         */
        public ContentOrBuilder getContentOrBuilder() {
            return getContent();
        }

        public static final int TRANSFERSTATUS_FIELD_NUMBER = 6;
        private int transferStatus_;

        /**
         * <pre>
         * 传输状态 gateway
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.TransferStatus transferStatus = 6;</code>
         *
         * @return The enum numeric value on the wire for transferStatus.
         */
        public int getTransferStatusValue() {
            return transferStatus_;
        }

        /**
         * <pre>
         * 传输状态 gateway
         * </pre>
         *
         * <code>.com.welab.wefe.gateway.api.meta.basic.TransferStatus transferStatus = 6;</code>
         *
         * @return The transferStatus.
         */
        public TransferStatus getTransferStatus() {
            @SuppressWarnings("deprecation")
            TransferStatus result = TransferStatus.valueOf(transferStatus_);
            return result == null ? TransferStatus.UNRECOGNIZED : result;
        }

        public static final int SESSIONID_FIELD_NUMBER = 7;
        private volatile Object sessionId_;

        /**
         * <pre>
         * 唯一标识ID，客户端传
         * </pre>
         *
         * <code>string sessionId = 7;</code>
         *
         * @return The sessionId.
         */
        public String getSessionId() {
            Object ref = sessionId_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                sessionId_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * 唯一标识ID，客户端传
         * </pre>
         *
         * <code>string sessionId = 7;</code>
         *
         * @return The bytes for sessionId.
         */
        public com.google.protobuf.ByteString
        getSessionIdBytes() {
            Object ref = sessionId_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                sessionId_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int RECEIVEDATE_FIELD_NUMBER = 8;
        private long receiveDate_;

        /**
         * <pre>
         * 接收到数据的时间 gateway
         * </pre>
         *
         * <code>int64 receiveDate = 8;</code>
         *
         * @return The receiveDate.
         */
        public long getReceiveDate() {
            return receiveDate_;
        }

        public static final int EXPIREDATE_FIELD_NUMBER = 9;
        private long expireDate_;

        /**
         * <pre>
         * 数据过期时间 gateway
         * </pre>
         *
         * <code>int64 expireDate = 9;</code>
         *
         * @return The expireDate.
         */
        public long getExpireDate() {
            return expireDate_;
        }

        public static final int SEQUENCENO_FIELD_NUMBER = 10;
        private int sequenceNo_;

        /**
         * <pre>
         * 序号 gateway
         * </pre>
         *
         * <code>int32 sequenceNo = 10;</code>
         *
         * @return The sequenceNo.
         */
        public int getSequenceNo() {
            return sequenceNo_;
        }

        public static final int SEQUENCEISEND_FIELD_NUMBER = 11;
        private boolean sequenceIsEnd_;

        /**
         * <pre>
         * 是否结束 gateway
         * </pre>
         *
         * <code>bool sequenceIsEnd = 11;</code>
         *
         * @return The sequenceIsEnd.
         */
        public boolean getSequenceIsEnd() {
            return sequenceIsEnd_;
        }

        public static final int TAGGEDVARIABLENAME_FIELD_NUMBER = 12;
        private com.google.protobuf.ByteString taggedVariableName_;

        /**
         * <code>bytes taggedVariableName = 12;</code>
         *
         * @return The taggedVariableName.
         */
        public com.google.protobuf.ByteString getTaggedVariableName() {
            return taggedVariableName_;
        }

        public static final int TAG_FIELD_NUMBER = 13;
        private volatile Object tag_;

        /**
         * <code>string tag = 13;</code>
         *
         * @return The tag.
         */
        public String getTag() {
            Object ref = tag_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                tag_ = s;
                return s;
            }
        }

        /**
         * <code>string tag = 13;</code>
         *
         * @return The bytes for tag.
         */
        public com.google.protobuf.ByteString
        getTagBytes() {
            Object ref = tag_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                tag_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int CHANNEL_FIELD_NUMBER = 14;
        private volatile Object channel_;

        /**
         * <code>string channel = 14;</code>
         *
         * @return The channel.
         */
        public String getChannel() {
            Object ref = channel_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                channel_ = s;
                return s;
            }
        }

        /**
         * <code>string channel = 14;</code>
         *
         * @return The bytes for channel.
         */
        public com.google.protobuf.ByteString
        getChannelBytes() {
            Object ref = channel_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                channel_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int PROCESSOR_FIELD_NUMBER = 15;
        private volatile Object processor_;

        /**
         * <pre>
         * 处理器
         * </pre>
         *
         * <code>string processor = 15;</code>
         *
         * @return The processor.
         */
        public String getProcessor() {
            Object ref = processor_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                processor_ = s;
                return s;
            }
        }

        /**
         * <pre>
         * 处理器
         * </pre>
         *
         * <code>string processor = 15;</code>
         *
         * @return The bytes for processor.
         */
        public com.google.protobuf.ByteString
        getProcessorBytes() {
            Object ref = processor_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                processor_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (job_ != null) {
                output.writeMessage(1, getJob());
            }
            if (src_ != null) {
                output.writeMessage(2, getSrc());
            }
            if (dst_ != null) {
                output.writeMessage(3, getDst());
            }
            if (!getActionBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 4, action_);
            }
            if (content_ != null) {
                output.writeMessage(5, getContent());
            }
            if (transferStatus_ != TransferStatus.NOT_PROCESSED.getNumber()) {
                output.writeEnum(6, transferStatus_);
            }
            if (!getSessionIdBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 7, sessionId_);
            }
            if (receiveDate_ != 0L) {
                output.writeInt64(8, receiveDate_);
            }
            if (expireDate_ != 0L) {
                output.writeInt64(9, expireDate_);
            }
            if (sequenceNo_ != 0) {
                output.writeInt32(10, sequenceNo_);
            }
            if (sequenceIsEnd_ != false) {
                output.writeBool(11, sequenceIsEnd_);
            }
            if (!taggedVariableName_.isEmpty()) {
                output.writeBytes(12, taggedVariableName_);
            }
            if (!getTagBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 13, tag_);
            }
            if (!getChannelBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 14, channel_);
            }
            if (!getProcessorBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 15, processor_);
            }
            unknownFields.writeTo(output);
        }

        @Override
        public int getSerializedSize() {
            int size = memoizedSize;
            if (size != -1) return size;

            size = 0;
            if (job_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(1, getJob());
            }
            if (src_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(2, getSrc());
            }
            if (dst_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(3, getDst());
            }
            if (!getActionBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, action_);
            }
            if (content_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(5, getContent());
            }
            if (transferStatus_ != TransferStatus.NOT_PROCESSED.getNumber()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeEnumSize(6, transferStatus_);
            }
            if (!getSessionIdBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, sessionId_);
            }
            if (receiveDate_ != 0L) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt64Size(8, receiveDate_);
            }
            if (expireDate_ != 0L) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt64Size(9, expireDate_);
            }
            if (sequenceNo_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(10, sequenceNo_);
            }
            if (sequenceIsEnd_ != false) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBoolSize(11, sequenceIsEnd_);
            }
            if (!taggedVariableName_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(12, taggedVariableName_);
            }
            if (!getTagBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, tag_);
            }
            if (!getChannelBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, channel_);
            }
            if (!getProcessorBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, processor_);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof TransferMeta)) {
                return super.equals(obj);
            }
            TransferMeta other = (TransferMeta) obj;

            if (hasJob() != other.hasJob()) return false;
            if (hasJob()) {
                if (!getJob()
                        .equals(other.getJob())) return false;
            }
            if (hasSrc() != other.hasSrc()) return false;
            if (hasSrc()) {
                if (!getSrc()
                        .equals(other.getSrc())) return false;
            }
            if (hasDst() != other.hasDst()) return false;
            if (hasDst()) {
                if (!getDst()
                        .equals(other.getDst())) return false;
            }
            if (!getAction()
                    .equals(other.getAction())) return false;
            if (hasContent() != other.hasContent()) return false;
            if (hasContent()) {
                if (!getContent()
                        .equals(other.getContent())) return false;
            }
            if (transferStatus_ != other.transferStatus_) return false;
            if (!getSessionId()
                    .equals(other.getSessionId())) return false;
            if (getReceiveDate()
                    != other.getReceiveDate()) return false;
            if (getExpireDate()
                    != other.getExpireDate()) return false;
            if (getSequenceNo()
                    != other.getSequenceNo()) return false;
            if (getSequenceIsEnd()
                    != other.getSequenceIsEnd()) return false;
            if (!getTaggedVariableName()
                    .equals(other.getTaggedVariableName())) return false;
            if (!getTag()
                    .equals(other.getTag())) return false;
            if (!getChannel()
                    .equals(other.getChannel())) return false;
            if (!getProcessor()
                    .equals(other.getProcessor())) return false;
            if (!unknownFields.equals(other.unknownFields)) return false;
            return true;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            if (hasJob()) {
                hash = (37 * hash) + JOB_FIELD_NUMBER;
                hash = (53 * hash) + getJob().hashCode();
            }
            if (hasSrc()) {
                hash = (37 * hash) + SRC_FIELD_NUMBER;
                hash = (53 * hash) + getSrc().hashCode();
            }
            if (hasDst()) {
                hash = (37 * hash) + DST_FIELD_NUMBER;
                hash = (53 * hash) + getDst().hashCode();
            }
            hash = (37 * hash) + ACTION_FIELD_NUMBER;
            hash = (53 * hash) + getAction().hashCode();
            if (hasContent()) {
                hash = (37 * hash) + CONTENT_FIELD_NUMBER;
                hash = (53 * hash) + getContent().hashCode();
            }
            hash = (37 * hash) + TRANSFERSTATUS_FIELD_NUMBER;
            hash = (53 * hash) + transferStatus_;
            hash = (37 * hash) + SESSIONID_FIELD_NUMBER;
            hash = (53 * hash) + getSessionId().hashCode();
            hash = (37 * hash) + RECEIVEDATE_FIELD_NUMBER;
            hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
                    getReceiveDate());
            hash = (37 * hash) + EXPIREDATE_FIELD_NUMBER;
            hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
                    getExpireDate());
            hash = (37 * hash) + SEQUENCENO_FIELD_NUMBER;
            hash = (53 * hash) + getSequenceNo();
            hash = (37 * hash) + SEQUENCEISEND_FIELD_NUMBER;
            hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
                    getSequenceIsEnd());
            hash = (37 * hash) + TAGGEDVARIABLENAME_FIELD_NUMBER;
            hash = (53 * hash) + getTaggedVariableName().hashCode();
            hash = (37 * hash) + TAG_FIELD_NUMBER;
            hash = (53 * hash) + getTag().hashCode();
            hash = (37 * hash) + CHANNEL_FIELD_NUMBER;
            hash = (53 * hash) + getChannel().hashCode();
            hash = (37 * hash) + PROCESSOR_FIELD_NUMBER;
            hash = (53 * hash) + getProcessor().hashCode();
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static TransferMeta parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static TransferMeta parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static TransferMeta parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static TransferMeta parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static TransferMeta parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static TransferMeta parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static TransferMeta parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static TransferMeta parseFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        public static TransferMeta parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static TransferMeta parseDelimitedFrom(
                java.io.InputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
        }

        public static TransferMeta parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static TransferMeta parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(TransferMeta prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * <pre>
         * 网关收发的元数据
         * </pre>
         * <p>
         * Protobuf type {@code com.welab.wefe.gateway.api.meta.basic.TransferMeta}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:com.welab.wefe.gateway.api.meta.basic.TransferMeta)
                TransferMetaOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                TransferMeta.class, Builder.class);
            }

            // Construct using com.welab.wefe.gateway.api.meta.basic.GatewayMetaProto.TransferMeta.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                if (jobBuilder_ == null) {
                    job_ = null;
                } else {
                    job_ = null;
                    jobBuilder_ = null;
                }
                if (srcBuilder_ == null) {
                    src_ = null;
                } else {
                    src_ = null;
                    srcBuilder_ = null;
                }
                if (dstBuilder_ == null) {
                    dst_ = null;
                } else {
                    dst_ = null;
                    dstBuilder_ = null;
                }
                action_ = "";

                if (contentBuilder_ == null) {
                    content_ = null;
                } else {
                    content_ = null;
                    contentBuilder_ = null;
                }
                transferStatus_ = 0;

                sessionId_ = "";

                receiveDate_ = 0L;

                expireDate_ = 0L;

                sequenceNo_ = 0;

                sequenceIsEnd_ = false;

                taggedVariableName_ = com.google.protobuf.ByteString.EMPTY;

                tag_ = "";

                channel_ = "";

                processor_ = "";

                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return GatewayMetaProto.internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_descriptor;
            }

            @Override
            public TransferMeta getDefaultInstanceForType() {
                return TransferMeta.getDefaultInstance();
            }

            @Override
            public TransferMeta build() {
                TransferMeta result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public TransferMeta buildPartial() {
                TransferMeta result = new TransferMeta(this);
                if (jobBuilder_ == null) {
                    result.job_ = job_;
                } else {
                    result.job_ = jobBuilder_.build();
                }
                if (srcBuilder_ == null) {
                    result.src_ = src_;
                } else {
                    result.src_ = srcBuilder_.build();
                }
                if (dstBuilder_ == null) {
                    result.dst_ = dst_;
                } else {
                    result.dst_ = dstBuilder_.build();
                }
                result.action_ = action_;
                if (contentBuilder_ == null) {
                    result.content_ = content_;
                } else {
                    result.content_ = contentBuilder_.build();
                }
                result.transferStatus_ = transferStatus_;
                result.sessionId_ = sessionId_;
                result.receiveDate_ = receiveDate_;
                result.expireDate_ = expireDate_;
                result.sequenceNo_ = sequenceNo_;
                result.sequenceIsEnd_ = sequenceIsEnd_;
                result.taggedVariableName_ = taggedVariableName_;
                result.tag_ = tag_;
                result.channel_ = channel_;
                result.processor_ = processor_;
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof TransferMeta) {
                    return mergeFrom((TransferMeta) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(TransferMeta other) {
                if (other == TransferMeta.getDefaultInstance()) return this;
                if (other.hasJob()) {
                    mergeJob(other.getJob());
                }
                if (other.hasSrc()) {
                    mergeSrc(other.getSrc());
                }
                if (other.hasDst()) {
                    mergeDst(other.getDst());
                }
                if (!other.getAction().isEmpty()) {
                    action_ = other.action_;
                    onChanged();
                }
                if (other.hasContent()) {
                    mergeContent(other.getContent());
                }
                if (other.transferStatus_ != 0) {
                    setTransferStatusValue(other.getTransferStatusValue());
                }
                if (!other.getSessionId().isEmpty()) {
                    sessionId_ = other.sessionId_;
                    onChanged();
                }
                if (other.getReceiveDate() != 0L) {
                    setReceiveDate(other.getReceiveDate());
                }
                if (other.getExpireDate() != 0L) {
                    setExpireDate(other.getExpireDate());
                }
                if (other.getSequenceNo() != 0) {
                    setSequenceNo(other.getSequenceNo());
                }
                if (other.getSequenceIsEnd() != false) {
                    setSequenceIsEnd(other.getSequenceIsEnd());
                }
                if (other.getTaggedVariableName() != com.google.protobuf.ByteString.EMPTY) {
                    setTaggedVariableName(other.getTaggedVariableName());
                }
                if (!other.getTag().isEmpty()) {
                    tag_ = other.tag_;
                    onChanged();
                }
                if (!other.getChannel().isEmpty()) {
                    channel_ = other.channel_;
                    onChanged();
                }
                if (!other.getProcessor().isEmpty()) {
                    processor_ = other.processor_;
                    onChanged();
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

            @Override
            public final boolean isInitialized() {
                return true;
            }

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                TransferMeta parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (TransferMeta) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private Job job_;
            private com.google.protobuf.SingleFieldBuilderV3<
                    Job, Job.Builder, JobOrBuilder> jobBuilder_;

            /**
             * <pre>
             * 作业信息 客户端传（可空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
             *
             * @return Whether the job field is set.
             */
            public boolean hasJob() {
                return jobBuilder_ != null || job_ != null;
            }

            /**
             * <pre>
             * 作业信息 客户端传（可空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
             *
             * @return The job.
             */
            public Job getJob() {
                if (jobBuilder_ == null) {
                    return job_ == null ? Job.getDefaultInstance() : job_;
                } else {
                    return jobBuilder_.getMessage();
                }
            }

            /**
             * <pre>
             * 作业信息 客户端传（可空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
             */
            public Builder setJob(Job value) {
                if (jobBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    job_ = value;
                    onChanged();
                } else {
                    jobBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <pre>
             * 作业信息 客户端传（可空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
             */
            public Builder setJob(
                    Job.Builder builderForValue) {
                if (jobBuilder_ == null) {
                    job_ = builderForValue.build();
                    onChanged();
                } else {
                    jobBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <pre>
             * 作业信息 客户端传（可空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
             */
            public Builder mergeJob(Job value) {
                if (jobBuilder_ == null) {
                    if (job_ != null) {
                        job_ =
                                Job.newBuilder(job_).mergeFrom(value).buildPartial();
                    } else {
                        job_ = value;
                    }
                    onChanged();
                } else {
                    jobBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <pre>
             * 作业信息 客户端传（可空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
             */
            public Builder clearJob() {
                if (jobBuilder_ == null) {
                    job_ = null;
                    onChanged();
                } else {
                    job_ = null;
                    jobBuilder_ = null;
                }

                return this;
            }

            /**
             * <pre>
             * 作业信息 客户端传（可空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
             */
            public Job.Builder getJobBuilder() {

                onChanged();
                return getJobFieldBuilder().getBuilder();
            }

            /**
             * <pre>
             * 作业信息 客户端传（可空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
             */
            public JobOrBuilder getJobOrBuilder() {
                if (jobBuilder_ != null) {
                    return jobBuilder_.getMessageOrBuilder();
                } else {
                    return job_ == null ?
                            Job.getDefaultInstance() : job_;
                }
            }

            /**
             * <pre>
             * 作业信息 客户端传（可空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Job job = 1;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    Job, Job.Builder, JobOrBuilder>
            getJobFieldBuilder() {
                if (jobBuilder_ == null) {
                    jobBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            Job, Job.Builder, JobOrBuilder>(
                            getJob(),
                            getParentForChildren(),
                            isClean());
                    job_ = null;
                }
                return jobBuilder_;
            }

            private Member src_;
            private com.google.protobuf.SingleFieldBuilderV3<
                    Member, Member.Builder, MemberOrBuilder> srcBuilder_;

            /**
             * <pre>
             * 发送方 gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
             *
             * @return Whether the src field is set.
             */
            public boolean hasSrc() {
                return srcBuilder_ != null || src_ != null;
            }

            /**
             * <pre>
             * 发送方 gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
             *
             * @return The src.
             */
            public Member getSrc() {
                if (srcBuilder_ == null) {
                    return src_ == null ? Member.getDefaultInstance() : src_;
                } else {
                    return srcBuilder_.getMessage();
                }
            }

            /**
             * <pre>
             * 发送方 gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
             */
            public Builder setSrc(Member value) {
                if (srcBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    src_ = value;
                    onChanged();
                } else {
                    srcBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <pre>
             * 发送方 gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
             */
            public Builder setSrc(
                    Member.Builder builderForValue) {
                if (srcBuilder_ == null) {
                    src_ = builderForValue.build();
                    onChanged();
                } else {
                    srcBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <pre>
             * 发送方 gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
             */
            public Builder mergeSrc(Member value) {
                if (srcBuilder_ == null) {
                    if (src_ != null) {
                        src_ =
                                Member.newBuilder(src_).mergeFrom(value).buildPartial();
                    } else {
                        src_ = value;
                    }
                    onChanged();
                } else {
                    srcBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <pre>
             * 发送方 gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
             */
            public Builder clearSrc() {
                if (srcBuilder_ == null) {
                    src_ = null;
                    onChanged();
                } else {
                    src_ = null;
                    srcBuilder_ = null;
                }

                return this;
            }

            /**
             * <pre>
             * 发送方 gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
             */
            public Member.Builder getSrcBuilder() {

                onChanged();
                return getSrcFieldBuilder().getBuilder();
            }

            /**
             * <pre>
             * 发送方 gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
             */
            public MemberOrBuilder getSrcOrBuilder() {
                if (srcBuilder_ != null) {
                    return srcBuilder_.getMessageOrBuilder();
                } else {
                    return src_ == null ?
                            Member.getDefaultInstance() : src_;
                }
            }

            /**
             * <pre>
             * 发送方 gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member src = 2;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    Member, Member.Builder, MemberOrBuilder>
            getSrcFieldBuilder() {
                if (srcBuilder_ == null) {
                    srcBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            Member, Member.Builder, MemberOrBuilder>(
                            getSrc(),
                            getParentForChildren(),
                            isClean());
                    src_ = null;
                }
                return srcBuilder_;
            }

            private Member dst_;
            private com.google.protobuf.SingleFieldBuilderV3<
                    Member, Member.Builder, MemberOrBuilder> dstBuilder_;

            /**
             * <pre>
             * 接收方gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
             *
             * @return Whether the dst field is set.
             */
            public boolean hasDst() {
                return dstBuilder_ != null || dst_ != null;
            }

            /**
             * <pre>
             * 接收方gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
             *
             * @return The dst.
             */
            public Member getDst() {
                if (dstBuilder_ == null) {
                    return dst_ == null ? Member.getDefaultInstance() : dst_;
                } else {
                    return dstBuilder_.getMessage();
                }
            }

            /**
             * <pre>
             * 接收方gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
             */
            public Builder setDst(Member value) {
                if (dstBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    dst_ = value;
                    onChanged();
                } else {
                    dstBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <pre>
             * 接收方gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
             */
            public Builder setDst(
                    Member.Builder builderForValue) {
                if (dstBuilder_ == null) {
                    dst_ = builderForValue.build();
                    onChanged();
                } else {
                    dstBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <pre>
             * 接收方gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
             */
            public Builder mergeDst(Member value) {
                if (dstBuilder_ == null) {
                    if (dst_ != null) {
                        dst_ =
                                Member.newBuilder(dst_).mergeFrom(value).buildPartial();
                    } else {
                        dst_ = value;
                    }
                    onChanged();
                } else {
                    dstBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <pre>
             * 接收方gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
             */
            public Builder clearDst() {
                if (dstBuilder_ == null) {
                    dst_ = null;
                    onChanged();
                } else {
                    dst_ = null;
                    dstBuilder_ = null;
                }

                return this;
            }

            /**
             * <pre>
             * 接收方gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
             */
            public Member.Builder getDstBuilder() {

                onChanged();
                return getDstFieldBuilder().getBuilder();
            }

            /**
             * <pre>
             * 接收方gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
             */
            public MemberOrBuilder getDstOrBuilder() {
                if (dstBuilder_ != null) {
                    return dstBuilder_.getMessageOrBuilder();
                } else {
                    return dst_ == null ?
                            Member.getDefaultInstance() : dst_;
                }
            }

            /**
             * <pre>
             * 接收方gateway（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Member dst = 3;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    Member, Member.Builder, MemberOrBuilder>
            getDstFieldBuilder() {
                if (dstBuilder_ == null) {
                    dstBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            Member, Member.Builder, MemberOrBuilder>(
                            getDst(),
                            getParentForChildren(),
                            isClean());
                    dst_ = null;
                }
                return dstBuilder_;
            }

            private Object action_ = "";

            /**
             * <pre>
             * 动作 客户端传（非空）
             * </pre>
             *
             * <code>string action = 4;</code>
             *
             * @return The action.
             */
            public String getAction() {
                Object ref = action_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    action_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * 动作 客户端传（非空）
             * </pre>
             *
             * <code>string action = 4;</code>
             *
             * @return The bytes for action.
             */
            public com.google.protobuf.ByteString
            getActionBytes() {
                Object ref = action_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    action_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * 动作 客户端传（非空）
             * </pre>
             *
             * <code>string action = 4;</code>
             *
             * @param value The action to set.
             * @return This builder for chaining.
             */
            public Builder setAction(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                action_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 动作 客户端传（非空）
             * </pre>
             *
             * <code>string action = 4;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearAction() {

                action_ = getDefaultInstance().getAction();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 动作 客户端传（非空）
             * </pre>
             *
             * <code>string action = 4;</code>
             *
             * @param value The bytes for action to set.
             * @return This builder for chaining.
             */
            public Builder setActionBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                action_ = value;
                onChanged();
                return this;
            }

            private Content content_;
            private com.google.protobuf.SingleFieldBuilderV3<
                    Content, Content.Builder, ContentOrBuilder> contentBuilder_;

            /**
             * <pre>
             * 内容 客户传（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
             *
             * @return Whether the content field is set.
             */
            public boolean hasContent() {
                return contentBuilder_ != null || content_ != null;
            }

            /**
             * <pre>
             * 内容 客户传（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
             *
             * @return The content.
             */
            public Content getContent() {
                if (contentBuilder_ == null) {
                    return content_ == null ? Content.getDefaultInstance() : content_;
                } else {
                    return contentBuilder_.getMessage();
                }
            }

            /**
             * <pre>
             * 内容 客户传（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
             */
            public Builder setContent(Content value) {
                if (contentBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    content_ = value;
                    onChanged();
                } else {
                    contentBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <pre>
             * 内容 客户传（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
             */
            public Builder setContent(
                    Content.Builder builderForValue) {
                if (contentBuilder_ == null) {
                    content_ = builderForValue.build();
                    onChanged();
                } else {
                    contentBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <pre>
             * 内容 客户传（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
             */
            public Builder mergeContent(Content value) {
                if (contentBuilder_ == null) {
                    if (content_ != null) {
                        content_ =
                                Content.newBuilder(content_).mergeFrom(value).buildPartial();
                    } else {
                        content_ = value;
                    }
                    onChanged();
                } else {
                    contentBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <pre>
             * 内容 客户传（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
             */
            public Builder clearContent() {
                if (contentBuilder_ == null) {
                    content_ = null;
                    onChanged();
                } else {
                    content_ = null;
                    contentBuilder_ = null;
                }

                return this;
            }

            /**
             * <pre>
             * 内容 客户传（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
             */
            public Content.Builder getContentBuilder() {

                onChanged();
                return getContentFieldBuilder().getBuilder();
            }

            /**
             * <pre>
             * 内容 客户传（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
             */
            public ContentOrBuilder getContentOrBuilder() {
                if (contentBuilder_ != null) {
                    return contentBuilder_.getMessageOrBuilder();
                } else {
                    return content_ == null ?
                            Content.getDefaultInstance() : content_;
                }
            }

            /**
             * <pre>
             * 内容 客户传（非空）
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.Content content = 5;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    Content, Content.Builder, ContentOrBuilder>
            getContentFieldBuilder() {
                if (contentBuilder_ == null) {
                    contentBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            Content, Content.Builder, ContentOrBuilder>(
                            getContent(),
                            getParentForChildren(),
                            isClean());
                    content_ = null;
                }
                return contentBuilder_;
            }

            private int transferStatus_ = 0;

            /**
             * <pre>
             * 传输状态 gateway
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.TransferStatus transferStatus = 6;</code>
             *
             * @return The enum numeric value on the wire for transferStatus.
             */
            public int getTransferStatusValue() {
                return transferStatus_;
            }

            /**
             * <pre>
             * 传输状态 gateway
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.TransferStatus transferStatus = 6;</code>
             *
             * @param value The enum numeric value on the wire for transferStatus to set.
             * @return This builder for chaining.
             */
            public Builder setTransferStatusValue(int value) {
                transferStatus_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 传输状态 gateway
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.TransferStatus transferStatus = 6;</code>
             *
             * @return The transferStatus.
             */
            public TransferStatus getTransferStatus() {
                @SuppressWarnings("deprecation")
                TransferStatus result = TransferStatus.valueOf(transferStatus_);
                return result == null ? TransferStatus.UNRECOGNIZED : result;
            }

            /**
             * <pre>
             * 传输状态 gateway
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.TransferStatus transferStatus = 6;</code>
             *
             * @param value The transferStatus to set.
             * @return This builder for chaining.
             */
            public Builder setTransferStatus(TransferStatus value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                transferStatus_ = value.getNumber();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 传输状态 gateway
             * </pre>
             *
             * <code>.com.welab.wefe.gateway.api.meta.basic.TransferStatus transferStatus = 6;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearTransferStatus() {

                transferStatus_ = 0;
                onChanged();
                return this;
            }

            private Object sessionId_ = "";

            /**
             * <pre>
             * 唯一标识ID，客户端传
             * </pre>
             *
             * <code>string sessionId = 7;</code>
             *
             * @return The sessionId.
             */
            public String getSessionId() {
                Object ref = sessionId_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    sessionId_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * 唯一标识ID，客户端传
             * </pre>
             *
             * <code>string sessionId = 7;</code>
             *
             * @return The bytes for sessionId.
             */
            public com.google.protobuf.ByteString
            getSessionIdBytes() {
                Object ref = sessionId_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    sessionId_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * 唯一标识ID，客户端传
             * </pre>
             *
             * <code>string sessionId = 7;</code>
             *
             * @param value The sessionId to set.
             * @return This builder for chaining.
             */
            public Builder setSessionId(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                sessionId_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 唯一标识ID，客户端传
             * </pre>
             *
             * <code>string sessionId = 7;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearSessionId() {

                sessionId_ = getDefaultInstance().getSessionId();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 唯一标识ID，客户端传
             * </pre>
             *
             * <code>string sessionId = 7;</code>
             *
             * @param value The bytes for sessionId to set.
             * @return This builder for chaining.
             */
            public Builder setSessionIdBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                sessionId_ = value;
                onChanged();
                return this;
            }

            private long receiveDate_;

            /**
             * <pre>
             * 接收到数据的时间 gateway
             * </pre>
             *
             * <code>int64 receiveDate = 8;</code>
             *
             * @return The receiveDate.
             */
            public long getReceiveDate() {
                return receiveDate_;
            }

            /**
             * <pre>
             * 接收到数据的时间 gateway
             * </pre>
             *
             * <code>int64 receiveDate = 8;</code>
             *
             * @param value The receiveDate to set.
             * @return This builder for chaining.
             */
            public Builder setReceiveDate(long value) {

                receiveDate_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 接收到数据的时间 gateway
             * </pre>
             *
             * <code>int64 receiveDate = 8;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearReceiveDate() {

                receiveDate_ = 0L;
                onChanged();
                return this;
            }

            private long expireDate_;

            /**
             * <pre>
             * 数据过期时间 gateway
             * </pre>
             *
             * <code>int64 expireDate = 9;</code>
             *
             * @return The expireDate.
             */
            public long getExpireDate() {
                return expireDate_;
            }

            /**
             * <pre>
             * 数据过期时间 gateway
             * </pre>
             *
             * <code>int64 expireDate = 9;</code>
             *
             * @param value The expireDate to set.
             * @return This builder for chaining.
             */
            public Builder setExpireDate(long value) {

                expireDate_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 数据过期时间 gateway
             * </pre>
             *
             * <code>int64 expireDate = 9;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearExpireDate() {

                expireDate_ = 0L;
                onChanged();
                return this;
            }

            private int sequenceNo_;

            /**
             * <pre>
             * 序号 gateway
             * </pre>
             *
             * <code>int32 sequenceNo = 10;</code>
             *
             * @return The sequenceNo.
             */
            public int getSequenceNo() {
                return sequenceNo_;
            }

            /**
             * <pre>
             * 序号 gateway
             * </pre>
             *
             * <code>int32 sequenceNo = 10;</code>
             *
             * @param value The sequenceNo to set.
             * @return This builder for chaining.
             */
            public Builder setSequenceNo(int value) {

                sequenceNo_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 序号 gateway
             * </pre>
             *
             * <code>int32 sequenceNo = 10;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearSequenceNo() {

                sequenceNo_ = 0;
                onChanged();
                return this;
            }

            private boolean sequenceIsEnd_;

            /**
             * <pre>
             * 是否结束 gateway
             * </pre>
             *
             * <code>bool sequenceIsEnd = 11;</code>
             *
             * @return The sequenceIsEnd.
             */
            public boolean getSequenceIsEnd() {
                return sequenceIsEnd_;
            }

            /**
             * <pre>
             * 是否结束 gateway
             * </pre>
             *
             * <code>bool sequenceIsEnd = 11;</code>
             *
             * @param value The sequenceIsEnd to set.
             * @return This builder for chaining.
             */
            public Builder setSequenceIsEnd(boolean value) {

                sequenceIsEnd_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 是否结束 gateway
             * </pre>
             *
             * <code>bool sequenceIsEnd = 11;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearSequenceIsEnd() {

                sequenceIsEnd_ = false;
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString taggedVariableName_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes taggedVariableName = 12;</code>
             *
             * @return The taggedVariableName.
             */
            public com.google.protobuf.ByteString getTaggedVariableName() {
                return taggedVariableName_;
            }

            /**
             * <code>bytes taggedVariableName = 12;</code>
             *
             * @param value The taggedVariableName to set.
             * @return This builder for chaining.
             */
            public Builder setTaggedVariableName(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                taggedVariableName_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes taggedVariableName = 12;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearTaggedVariableName() {

                taggedVariableName_ = getDefaultInstance().getTaggedVariableName();
                onChanged();
                return this;
            }

            private Object tag_ = "";

            /**
             * <code>string tag = 13;</code>
             *
             * @return The tag.
             */
            public String getTag() {
                Object ref = tag_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    tag_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string tag = 13;</code>
             *
             * @return The bytes for tag.
             */
            public com.google.protobuf.ByteString
            getTagBytes() {
                Object ref = tag_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    tag_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string tag = 13;</code>
             *
             * @param value The tag to set.
             * @return This builder for chaining.
             */
            public Builder setTag(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                tag_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string tag = 13;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearTag() {

                tag_ = getDefaultInstance().getTag();
                onChanged();
                return this;
            }

            /**
             * <code>string tag = 13;</code>
             *
             * @param value The bytes for tag to set.
             * @return This builder for chaining.
             */
            public Builder setTagBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                tag_ = value;
                onChanged();
                return this;
            }

            private Object channel_ = "";

            /**
             * <code>string channel = 14;</code>
             *
             * @return The channel.
             */
            public String getChannel() {
                Object ref = channel_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    channel_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string channel = 14;</code>
             *
             * @return The bytes for channel.
             */
            public com.google.protobuf.ByteString
            getChannelBytes() {
                Object ref = channel_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    channel_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string channel = 14;</code>
             *
             * @param value The channel to set.
             * @return This builder for chaining.
             */
            public Builder setChannel(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                channel_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string channel = 14;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearChannel() {

                channel_ = getDefaultInstance().getChannel();
                onChanged();
                return this;
            }

            /**
             * <code>string channel = 14;</code>
             *
             * @param value The bytes for channel to set.
             * @return This builder for chaining.
             */
            public Builder setChannelBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                channel_ = value;
                onChanged();
                return this;
            }

            private Object processor_ = "";

            /**
             * <pre>
             * 处理器
             * </pre>
             *
             * <code>string processor = 15;</code>
             *
             * @return The processor.
             */
            public String getProcessor() {
                Object ref = processor_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    processor_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <pre>
             * 处理器
             * </pre>
             *
             * <code>string processor = 15;</code>
             *
             * @return The bytes for processor.
             */
            public com.google.protobuf.ByteString
            getProcessorBytes() {
                Object ref = processor_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    processor_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <pre>
             * 处理器
             * </pre>
             *
             * <code>string processor = 15;</code>
             *
             * @param value The processor to set.
             * @return This builder for chaining.
             */
            public Builder setProcessor(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                processor_ = value;
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 处理器
             * </pre>
             *
             * <code>string processor = 15;</code>
             *
             * @return This builder for chaining.
             */
            public Builder clearProcessor() {

                processor_ = getDefaultInstance().getProcessor();
                onChanged();
                return this;
            }

            /**
             * <pre>
             * 处理器
             * </pre>
             *
             * <code>string processor = 15;</code>
             *
             * @param value The bytes for processor to set.
             * @return This builder for chaining.
             */
            public Builder setProcessorBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                processor_ = value;
                onChanged();
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFields(unknownFields);
            }

            @Override
            public final Builder mergeUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.mergeUnknownFields(unknownFields);
            }


            // @@protoc_insertion_point(builder_scope:com.welab.wefe.gateway.api.meta.basic.TransferMeta)
        }

        // @@protoc_insertion_point(class_scope:com.welab.wefe.gateway.api.meta.basic.TransferMeta)
        private static final TransferMeta DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new TransferMeta();
        }

        public static TransferMeta getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<TransferMeta>
                PARSER = new com.google.protobuf.AbstractParser<TransferMeta>() {
            @Override
            public TransferMeta parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new TransferMeta(input, extensionRegistry);
            }
        };

        public static com.google.protobuf.Parser<TransferMeta> parser() {
            return PARSER;
        }

        @Override
        public com.google.protobuf.Parser<TransferMeta> getParserForType() {
            return PARSER;
        }

        @Override
        public TransferMeta getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_com_welab_wefe_gateway_api_meta_basic_Job_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_com_welab_wefe_gateway_api_meta_basic_Job_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_com_welab_wefe_gateway_api_meta_basic_Task_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_com_welab_wefe_gateway_api_meta_basic_Task_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_com_welab_wefe_gateway_api_meta_basic_Member_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_com_welab_wefe_gateway_api_meta_basic_Member_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_com_welab_wefe_gateway_api_meta_basic_Content_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_com_welab_wefe_gateway_api_meta_basic_Content_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_fieldAccessorTable;

    public static com.google.protobuf.Descriptors.FileDescriptor
    getDescriptor() {
        return descriptor;
    }

    private static com.google.protobuf.Descriptors.FileDescriptor
            descriptor;

    static {
        String[] descriptorData = {
                "\n\022gateway-meta.proto\022%com.welab.wefe.gat" +
                        "eway.api.meta.basic\032\020basic-meta.proto\032\023s" +
                        "torage-basic.proto\"%\n\003Job\022\r\n\005jobId\030\001 \001(\t" +
                        "\022\017\n\007jobName\030\002 \001(\t\"a\n\004Task\022\016\n\006taskId\030\001 \001(" +
                        "\t\022\020\n\010taskName\030\002 \001(\t\0227\n\003job\030\003 \001(\0132*.com.w" +
                        "elab.wefe.gateway.api.meta.basic.Job\"q\n\006" +
                        "Member\022\020\n\010memberId\030\001 \001(\t\022\022\n\nmemberName\030\002" +
                        " \001(\t\022A\n\010endpoint\030\003 \001(\0132/.com.welab.wefe." +
                        "gateway.api.meta.basic.Endpoint\"}\n\007Conte" +
                        "nt\022\022\n\nobjectData\030\001 \001(\t\022\026\n\016objectByteData" +
                        "\030\003 \001(\014\022F\n\013configDatas\030\002 \003(\01321.com.welab." +
                        "wefe.gateway.api.meta.basic.ConfigData\"(" +
                        "\n\nConfigData\022\013\n\003key\030\001 \001(\014\022\r\n\005value\030\002 \001(\014" +
                        "\"\223\004\n\014TransferMeta\0227\n\003job\030\001 \001(\0132*.com.wel" +
                        "ab.wefe.gateway.api.meta.basic.Job\022:\n\003sr" +
                        "c\030\002 \001(\0132-.com.welab.wefe.gateway.api.met" +
                        "a.basic.Member\022:\n\003dst\030\003 \001(\0132-.com.welab." +
                        "wefe.gateway.api.meta.basic.Member\022\016\n\006ac" +
                        "tion\030\004 \001(\t\022?\n\007content\030\005 \001(\0132..com.welab." +
                        "wefe.gateway.api.meta.basic.Content\022M\n\016t" +
                        "ransferStatus\030\006 \001(\01625.com.welab.wefe.gat" +
                        "eway.api.meta.basic.TransferStatus\022\021\n\tse" +
                        "ssionId\030\007 \001(\t\022\023\n\013receiveDate\030\010 \001(\003\022\022\n\nex" +
                        "pireDate\030\t \001(\003\022\022\n\nsequenceNo\030\n \001(\005\022\025\n\rse" +
                        "quenceIsEnd\030\013 \001(\010\022\032\n\022taggedVariableName\030" +
                        "\014 \001(\014\022\013\n\003tag\030\r \001(\t\022\017\n\007channel\030\016 \001(\t\022\021\n\tp" +
                        "rocessor\030\017 \001(\t*m\n\016TransferStatus\022\021\n\rNOT_" +
                        "PROCESSED\020\000\022\020\n\014INITIALIZING\020\001\022\016\n\nPROCESS" +
                        "ING\020\002\022\014\n\010COMPLETE\020\003\022\t\n\005ERROR\020\004\022\r\n\tCANCEL" +
                        "LED\020\005B\022B\020GatewayMetaProtob\006proto3"
        };
        descriptor = com.google.protobuf.Descriptors.FileDescriptor
                .internalBuildGeneratedFileFrom(descriptorData,
                        new com.google.protobuf.Descriptors.FileDescriptor[]{
                                BasicMetaProto.getDescriptor(),
                                com.welab.wefe.gateway.api.meta.storage.StorageMetaProto.getDescriptor(),
                        });
        internal_static_com_welab_wefe_gateway_api_meta_basic_Job_descriptor =
                getDescriptor().getMessageTypes().get(0);
        internal_static_com_welab_wefe_gateway_api_meta_basic_Job_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_com_welab_wefe_gateway_api_meta_basic_Job_descriptor,
                new String[]{"JobId", "JobName",});
        internal_static_com_welab_wefe_gateway_api_meta_basic_Task_descriptor =
                getDescriptor().getMessageTypes().get(1);
        internal_static_com_welab_wefe_gateway_api_meta_basic_Task_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_com_welab_wefe_gateway_api_meta_basic_Task_descriptor,
                new String[]{"TaskId", "TaskName", "Job",});
        internal_static_com_welab_wefe_gateway_api_meta_basic_Member_descriptor =
                getDescriptor().getMessageTypes().get(2);
        internal_static_com_welab_wefe_gateway_api_meta_basic_Member_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_com_welab_wefe_gateway_api_meta_basic_Member_descriptor,
                new String[]{"MemberId", "MemberName", "Endpoint",});
        internal_static_com_welab_wefe_gateway_api_meta_basic_Content_descriptor =
                getDescriptor().getMessageTypes().get(3);
        internal_static_com_welab_wefe_gateway_api_meta_basic_Content_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_com_welab_wefe_gateway_api_meta_basic_Content_descriptor,
                new String[]{"ObjectData", "ObjectByteData", "ConfigDatas",});
        internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_descriptor =
                getDescriptor().getMessageTypes().get(4);
        internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_com_welab_wefe_gateway_api_meta_basic_ConfigData_descriptor,
                new String[]{"Key", "Value",});
        internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_descriptor =
                getDescriptor().getMessageTypes().get(5);
        internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_com_welab_wefe_gateway_api_meta_basic_TransferMeta_descriptor,
                new String[]{"Job", "Src", "Dst", "Action", "Content", "TransferStatus", "SessionId", "ReceiveDate", "ExpireDate", "SequenceNo", "SequenceIsEnd", "TaggedVariableName", "Tag", "Channel", "Processor",});
        BasicMetaProto.getDescriptor();
        com.welab.wefe.gateway.api.meta.storage.StorageMetaProto.getDescriptor();
    }

    // @@protoc_insertion_point(outer_class_scope)
}
